ckplayer-plus 1.0.1 → 1.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -87,13 +87,13 @@
87
87
  width: 80px;
88
88
  height: 80px;
89
89
  border-radius: 50%;
90
- background: url(images/loading.png) no-repeat center center;
90
+ background: url(./images/loading.png) no-repeat center center;
91
91
  background-size: 100% 100%;
92
92
  animation: ck-Circle 1.5s linear infinite;
93
93
  -webkit-animation: ck-Circle 1.5s linear infinite
94
94
  }
95
95
  .ckplayer-ckplayer .ck-main .ck-center-play{
96
- background: url(images/play.png) no-repeat 70% center;
96
+ background: url(./images/play.png) no-repeat 70% center;
97
97
  background-size:60% 60%;
98
98
  border: 8px solid rgba(255,255,255,.3);
99
99
  border-radius: 50%;
@@ -127,7 +127,7 @@
127
127
  height: 120px;
128
128
  }
129
129
  .ckplayer-ckplayer .ck-main .ck-buffer{
130
- background: url(images/buffer.png) no-repeat center center;
130
+ background: url(./images/buffer.png) no-repeat center center;
131
131
  background-size:100% 100%;
132
132
  border-radius: 50%;
133
133
  width: 60px;
@@ -501,7 +501,7 @@
501
501
  /*显示广告时的底部按钮-共用*/
502
502
  .ckplayer-ckplayer .ck-main .ck-yytf .ck-yytf-bottom .ck-yytf-btn{
503
503
  background-color: rgba(0,0,0,.6);
504
- background-image: url(images/ckplayer_red.png);
504
+ background-image: url(./images/ckplayer_red.png);
505
505
  background-size: auto 100%;
506
506
  border: none;
507
507
  outline: none;
@@ -634,7 +634,7 @@
634
634
  width: 30px;
635
635
  height: 30px;
636
636
  background-color: transparent;
637
- background-image: url(images/adclose.png);
637
+ background-image: url(./images/adclose.png);
638
638
  border: none;
639
639
  outline: none;
640
640
  cursor: pointer;
@@ -691,7 +691,7 @@
691
691
  /*按钮公用样式*/
692
692
  .ckplayer-ckplayer .ck-main .ck-bar-btn{
693
693
  background-color: transparent;
694
- background-image: url(images/ckplayer_red.48.png);
694
+ background-image: url(./images/ckplayer_red.48.png);
695
695
  background-size: auto 100%;
696
696
  border: none;
697
697
  outline: none;
@@ -701,7 +701,7 @@
701
701
  background-repeat: no-repeat ;
702
702
  }
703
703
  .ckplayer-ckplayer .ck-main.ck-main-full .ck-bar-btn{
704
- background-image: url(images/ckplayer_red.png);
704
+ background-image: url(./images/ckplayer_red.png);
705
705
  width: 70px;
706
706
  height: 70px;
707
707
  }
package/dist/index.cjs CHANGED
@@ -205,10 +205,14 @@ var require_ckplayer = __commonJS({
205
205
  //是否显示错误信息
206
206
  pluginPath: "",
207
207
  //插件与语言包根路径(bundler 下建议配置或设置 window.ckplayerBasePath)
208
- autoPlug: true
208
+ autoPlug: true,
209
209
  //未指定 plug 时,根据视频地址后缀自动选择 hls.js / flv.js / mpegts.js
210
+ preferBuiltinPlug: true,
211
+ //优先加载本包内置插件脚本,避免复用页面上其它版本的全局 Hls/flvjs/mpegts
212
+ cdnFallback: true
213
+ // getPath 失败时是否回退到 jsDelivr(内网可设 false,并配置 pluginPath)
210
214
  };
211
- var ckplayerPlusDefaultCdn = "https://cdn.jsdelivr.net/npm/ckplayer-plus@__VERSION__/dist/";
215
+ var ckplayerPlusDefaultCdn = "https://cdn.jsdelivr.net/npm/ckplayer-plus@1.0.2/dist/";
212
216
  function ckplayerEmbed(videoObj) {
213
217
  var rightMenu = [
214
218
  {
@@ -388,7 +392,11 @@ var require_ckplayer = __commonJS({
388
392
  if (fromScript && fromScript.indexOf(folder + "/") > -1 && fromScript.indexOf("undefined") === -1) {
389
393
  return fromScript;
390
394
  }
395
+ var allowCdn = !vars || vars["cdnFallback"] !== false;
391
396
  var cdn = typeof window !== "undefined" && window.ckplayerPlusCdn ? window.ckplayerPlusCdn : ckplayerPlusDefaultCdn;
397
+ if (!allowCdn || !cdn || cdn.indexOf("1.0.2") > -1) {
398
+ return folder + "/" + file;
399
+ }
392
400
  if (cdn.slice(-1) !== "/") {
393
401
  cdn += "/";
394
402
  }
@@ -664,6 +672,12 @@ var require_ckplayer = __commonJS({
664
672
  } else if (valType(vars["seek"]) == "string" && vars["seek"] !== "" && !isNaN(parseFloat(vars["seek"]))) {
665
673
  seekTime = parseFloat(vars["seek"]);
666
674
  }
675
+ if (seekTime && seekTime > 0) {
676
+ maxSeeTime = Math.max(maxSeeTime, seekTime);
677
+ if (firstSeekTime < 0) {
678
+ firstSeekTime = seekTime;
679
+ }
680
+ }
667
681
  }
668
682
  }, plugPlayer = function(url) {
669
683
  switch (vars["plug"]) {
@@ -726,7 +740,7 @@ var require_ckplayer = __commonJS({
726
740
  video.attr("src", url);
727
741
  }
728
742
  };
729
- if (typeof Hls !== "undefined" && !isUndefined(Hls)) {
743
+ if (typeof Hls !== "undefined" && !isUndefined(Hls) && !vars["preferBuiltinPlug"]) {
730
744
  startHls();
731
745
  return;
732
746
  }
@@ -764,7 +778,7 @@ var require_ckplayer = __commonJS({
764
778
  });
765
779
  }
766
780
  };
767
- if (typeof flvjs !== "undefined" && !isUndefined(flvjs)) {
781
+ if (typeof flvjs !== "undefined" && !isUndefined(flvjs) && !vars["preferBuiltinPlug"]) {
768
782
  startFlv();
769
783
  return;
770
784
  }
@@ -802,7 +816,7 @@ var require_ckplayer = __commonJS({
802
816
  });
803
817
  }
804
818
  };
805
- if (typeof mpegts !== "undefined" && !isUndefined(mpegts)) {
819
+ if (typeof mpegts !== "undefined" && !isUndefined(mpegts) && !vars["preferBuiltinPlug"]) {
806
820
  startMpegts();
807
821
  return;
808
822
  }
@@ -1409,6 +1423,12 @@ var require_ckplayer = __commonJS({
1409
1423
  if (dur && isFinite(dur) && dur > 0 && t >= dur) {
1410
1424
  t = Math.max(0, dur - 0.3);
1411
1425
  }
1426
+ if (t > 0) {
1427
+ maxSeeTime = Math.max(maxSeeTime, t);
1428
+ if (firstSeekTime < 0) {
1429
+ firstSeekTime = t;
1430
+ }
1431
+ }
1412
1432
  seekTime = 0;
1413
1433
  try {
1414
1434
  video.currentTime = t;
@@ -2534,6 +2554,12 @@ var require_ckplayer = __commonJS({
2534
2554
  target = parseFloat(fn2);
2535
2555
  }
2536
2556
  if (target !== null && video) {
2557
+ if (target > 0 && (seekTime && Math.abs(seekTime - target) < 0.5 || vars["seek"] && parseFloat(vars["seek"]) > 0 && Math.abs(parseFloat(vars["seek"]) - target) < 0.5)) {
2558
+ maxSeeTime = Math.max(maxSeeTime, target);
2559
+ if (firstSeekTime < 0) {
2560
+ firstSeekTime = target;
2561
+ }
2562
+ }
2537
2563
  switch (vars["timeScheduleAdjust"]) {
2538
2564
  case 0:
2539
2565
  message(language["timeScheduleAdjust"]["prohibit"]);
@@ -2579,6 +2605,12 @@ var require_ckplayer = __commonJS({
2579
2605
  var ready = video.readyState >= 2 || duration && isFinite(duration) && duration > 0;
2580
2606
  if (!ready) {
2581
2607
  seekTime = target;
2608
+ if (target > 0) {
2609
+ maxSeeTime = Math.max(maxSeeTime, target);
2610
+ if (firstSeekTime < 0) {
2611
+ firstSeekTime = target;
2612
+ }
2613
+ }
2582
2614
  try {
2583
2615
  video.currentTime = target;
2584
2616
  } catch (event2) {
@@ -2591,9 +2623,15 @@ var require_ckplayer = __commonJS({
2591
2623
  if (target < 0) {
2592
2624
  target = 0;
2593
2625
  }
2626
+ if (vars["timeScheduleAdjust"] == 5 && target > maxSeeTime && seekTime && Math.abs(seekTime - target) < 0.5) {
2627
+ maxSeeTime = Math.max(maxSeeTime, target);
2628
+ }
2594
2629
  try {
2595
2630
  video.currentTime = target;
2596
2631
  seekTime = 0;
2632
+ if (target > maxSeeTime && vars["timeScheduleAdjust"] != 5) {
2633
+ maxSeeTime = target;
2634
+ }
2597
2635
  } catch (event2) {
2598
2636
  seekTime = target;
2599
2637
  }
package/dist/index.js CHANGED
@@ -200,10 +200,14 @@ var require_ckplayer = __commonJS({
200
200
  //是否显示错误信息
201
201
  pluginPath: "",
202
202
  //插件与语言包根路径(bundler 下建议配置或设置 window.ckplayerBasePath)
203
- autoPlug: true
203
+ autoPlug: true,
204
204
  //未指定 plug 时,根据视频地址后缀自动选择 hls.js / flv.js / mpegts.js
205
+ preferBuiltinPlug: true,
206
+ //优先加载本包内置插件脚本,避免复用页面上其它版本的全局 Hls/flvjs/mpegts
207
+ cdnFallback: true
208
+ // getPath 失败时是否回退到 jsDelivr(内网可设 false,并配置 pluginPath)
205
209
  };
206
- var ckplayerPlusDefaultCdn = "https://cdn.jsdelivr.net/npm/ckplayer-plus@__VERSION__/dist/";
210
+ var ckplayerPlusDefaultCdn = "https://cdn.jsdelivr.net/npm/ckplayer-plus@1.0.2/dist/";
207
211
  function ckplayerEmbed(videoObj) {
208
212
  var rightMenu = [
209
213
  {
@@ -383,7 +387,11 @@ var require_ckplayer = __commonJS({
383
387
  if (fromScript && fromScript.indexOf(folder + "/") > -1 && fromScript.indexOf("undefined") === -1) {
384
388
  return fromScript;
385
389
  }
390
+ var allowCdn = !vars || vars["cdnFallback"] !== false;
386
391
  var cdn = typeof window !== "undefined" && window.ckplayerPlusCdn ? window.ckplayerPlusCdn : ckplayerPlusDefaultCdn;
392
+ if (!allowCdn || !cdn || cdn.indexOf("1.0.2") > -1) {
393
+ return folder + "/" + file;
394
+ }
387
395
  if (cdn.slice(-1) !== "/") {
388
396
  cdn += "/";
389
397
  }
@@ -659,6 +667,12 @@ var require_ckplayer = __commonJS({
659
667
  } else if (valType(vars["seek"]) == "string" && vars["seek"] !== "" && !isNaN(parseFloat(vars["seek"]))) {
660
668
  seekTime = parseFloat(vars["seek"]);
661
669
  }
670
+ if (seekTime && seekTime > 0) {
671
+ maxSeeTime = Math.max(maxSeeTime, seekTime);
672
+ if (firstSeekTime < 0) {
673
+ firstSeekTime = seekTime;
674
+ }
675
+ }
662
676
  }
663
677
  }, plugPlayer = function(url) {
664
678
  switch (vars["plug"]) {
@@ -721,7 +735,7 @@ var require_ckplayer = __commonJS({
721
735
  video.attr("src", url);
722
736
  }
723
737
  };
724
- if (typeof Hls !== "undefined" && !isUndefined(Hls)) {
738
+ if (typeof Hls !== "undefined" && !isUndefined(Hls) && !vars["preferBuiltinPlug"]) {
725
739
  startHls();
726
740
  return;
727
741
  }
@@ -759,7 +773,7 @@ var require_ckplayer = __commonJS({
759
773
  });
760
774
  }
761
775
  };
762
- if (typeof flvjs !== "undefined" && !isUndefined(flvjs)) {
776
+ if (typeof flvjs !== "undefined" && !isUndefined(flvjs) && !vars["preferBuiltinPlug"]) {
763
777
  startFlv();
764
778
  return;
765
779
  }
@@ -797,7 +811,7 @@ var require_ckplayer = __commonJS({
797
811
  });
798
812
  }
799
813
  };
800
- if (typeof mpegts !== "undefined" && !isUndefined(mpegts)) {
814
+ if (typeof mpegts !== "undefined" && !isUndefined(mpegts) && !vars["preferBuiltinPlug"]) {
801
815
  startMpegts();
802
816
  return;
803
817
  }
@@ -1404,6 +1418,12 @@ var require_ckplayer = __commonJS({
1404
1418
  if (dur && isFinite(dur) && dur > 0 && t >= dur) {
1405
1419
  t = Math.max(0, dur - 0.3);
1406
1420
  }
1421
+ if (t > 0) {
1422
+ maxSeeTime = Math.max(maxSeeTime, t);
1423
+ if (firstSeekTime < 0) {
1424
+ firstSeekTime = t;
1425
+ }
1426
+ }
1407
1427
  seekTime = 0;
1408
1428
  try {
1409
1429
  video.currentTime = t;
@@ -2529,6 +2549,12 @@ var require_ckplayer = __commonJS({
2529
2549
  target = parseFloat(fn2);
2530
2550
  }
2531
2551
  if (target !== null && video) {
2552
+ if (target > 0 && (seekTime && Math.abs(seekTime - target) < 0.5 || vars["seek"] && parseFloat(vars["seek"]) > 0 && Math.abs(parseFloat(vars["seek"]) - target) < 0.5)) {
2553
+ maxSeeTime = Math.max(maxSeeTime, target);
2554
+ if (firstSeekTime < 0) {
2555
+ firstSeekTime = target;
2556
+ }
2557
+ }
2532
2558
  switch (vars["timeScheduleAdjust"]) {
2533
2559
  case 0:
2534
2560
  message(language["timeScheduleAdjust"]["prohibit"]);
@@ -2574,6 +2600,12 @@ var require_ckplayer = __commonJS({
2574
2600
  var ready = video.readyState >= 2 || duration && isFinite(duration) && duration > 0;
2575
2601
  if (!ready) {
2576
2602
  seekTime = target;
2603
+ if (target > 0) {
2604
+ maxSeeTime = Math.max(maxSeeTime, target);
2605
+ if (firstSeekTime < 0) {
2606
+ firstSeekTime = target;
2607
+ }
2608
+ }
2577
2609
  try {
2578
2610
  video.currentTime = target;
2579
2611
  } catch (event2) {
@@ -2586,9 +2618,15 @@ var require_ckplayer = __commonJS({
2586
2618
  if (target < 0) {
2587
2619
  target = 0;
2588
2620
  }
2621
+ if (vars["timeScheduleAdjust"] == 5 && target > maxSeeTime && seekTime && Math.abs(seekTime - target) < 0.5) {
2622
+ maxSeeTime = Math.max(maxSeeTime, target);
2623
+ }
2589
2624
  try {
2590
2625
  video.currentTime = target;
2591
2626
  seekTime = 0;
2627
+ if (target > maxSeeTime && vars["timeScheduleAdjust"] != 5) {
2628
+ maxSeeTime = target;
2629
+ }
2592
2630
  } catch (event2) {
2593
2631
  seekTime = target;
2594
2632
  }
package/dist/react.cjs CHANGED
@@ -205,10 +205,14 @@ var require_ckplayer = __commonJS({
205
205
  //是否显示错误信息
206
206
  pluginPath: "",
207
207
  //插件与语言包根路径(bundler 下建议配置或设置 window.ckplayerBasePath)
208
- autoPlug: true
208
+ autoPlug: true,
209
209
  //未指定 plug 时,根据视频地址后缀自动选择 hls.js / flv.js / mpegts.js
210
+ preferBuiltinPlug: true,
211
+ //优先加载本包内置插件脚本,避免复用页面上其它版本的全局 Hls/flvjs/mpegts
212
+ cdnFallback: true
213
+ // getPath 失败时是否回退到 jsDelivr(内网可设 false,并配置 pluginPath)
210
214
  };
211
- var ckplayerPlusDefaultCdn = "https://cdn.jsdelivr.net/npm/ckplayer-plus@__VERSION__/dist/";
215
+ var ckplayerPlusDefaultCdn = "https://cdn.jsdelivr.net/npm/ckplayer-plus@1.0.2/dist/";
212
216
  function ckplayerEmbed(videoObj) {
213
217
  var rightMenu = [
214
218
  {
@@ -388,7 +392,11 @@ var require_ckplayer = __commonJS({
388
392
  if (fromScript && fromScript.indexOf(folder + "/") > -1 && fromScript.indexOf("undefined") === -1) {
389
393
  return fromScript;
390
394
  }
395
+ var allowCdn = !vars || vars["cdnFallback"] !== false;
391
396
  var cdn = typeof window !== "undefined" && window.ckplayerPlusCdn ? window.ckplayerPlusCdn : ckplayerPlusDefaultCdn;
397
+ if (!allowCdn || !cdn || cdn.indexOf("1.0.2") > -1) {
398
+ return folder + "/" + file;
399
+ }
392
400
  if (cdn.slice(-1) !== "/") {
393
401
  cdn += "/";
394
402
  }
@@ -664,6 +672,12 @@ var require_ckplayer = __commonJS({
664
672
  } else if (valType(vars["seek"]) == "string" && vars["seek"] !== "" && !isNaN(parseFloat(vars["seek"]))) {
665
673
  seekTime = parseFloat(vars["seek"]);
666
674
  }
675
+ if (seekTime && seekTime > 0) {
676
+ maxSeeTime = Math.max(maxSeeTime, seekTime);
677
+ if (firstSeekTime < 0) {
678
+ firstSeekTime = seekTime;
679
+ }
680
+ }
667
681
  }
668
682
  }, plugPlayer = function(url) {
669
683
  switch (vars["plug"]) {
@@ -726,7 +740,7 @@ var require_ckplayer = __commonJS({
726
740
  video.attr("src", url);
727
741
  }
728
742
  };
729
- if (typeof Hls !== "undefined" && !isUndefined(Hls)) {
743
+ if (typeof Hls !== "undefined" && !isUndefined(Hls) && !vars["preferBuiltinPlug"]) {
730
744
  startHls();
731
745
  return;
732
746
  }
@@ -764,7 +778,7 @@ var require_ckplayer = __commonJS({
764
778
  });
765
779
  }
766
780
  };
767
- if (typeof flvjs !== "undefined" && !isUndefined(flvjs)) {
781
+ if (typeof flvjs !== "undefined" && !isUndefined(flvjs) && !vars["preferBuiltinPlug"]) {
768
782
  startFlv();
769
783
  return;
770
784
  }
@@ -802,7 +816,7 @@ var require_ckplayer = __commonJS({
802
816
  });
803
817
  }
804
818
  };
805
- if (typeof mpegts !== "undefined" && !isUndefined(mpegts)) {
819
+ if (typeof mpegts !== "undefined" && !isUndefined(mpegts) && !vars["preferBuiltinPlug"]) {
806
820
  startMpegts();
807
821
  return;
808
822
  }
@@ -1409,6 +1423,12 @@ var require_ckplayer = __commonJS({
1409
1423
  if (dur && isFinite(dur) && dur > 0 && t >= dur) {
1410
1424
  t = Math.max(0, dur - 0.3);
1411
1425
  }
1426
+ if (t > 0) {
1427
+ maxSeeTime = Math.max(maxSeeTime, t);
1428
+ if (firstSeekTime < 0) {
1429
+ firstSeekTime = t;
1430
+ }
1431
+ }
1412
1432
  seekTime = 0;
1413
1433
  try {
1414
1434
  video.currentTime = t;
@@ -2534,6 +2554,12 @@ var require_ckplayer = __commonJS({
2534
2554
  target = parseFloat(fn2);
2535
2555
  }
2536
2556
  if (target !== null && video) {
2557
+ if (target > 0 && (seekTime && Math.abs(seekTime - target) < 0.5 || vars["seek"] && parseFloat(vars["seek"]) > 0 && Math.abs(parseFloat(vars["seek"]) - target) < 0.5)) {
2558
+ maxSeeTime = Math.max(maxSeeTime, target);
2559
+ if (firstSeekTime < 0) {
2560
+ firstSeekTime = target;
2561
+ }
2562
+ }
2537
2563
  switch (vars["timeScheduleAdjust"]) {
2538
2564
  case 0:
2539
2565
  message(language["timeScheduleAdjust"]["prohibit"]);
@@ -2579,6 +2605,12 @@ var require_ckplayer = __commonJS({
2579
2605
  var ready = video.readyState >= 2 || duration && isFinite(duration) && duration > 0;
2580
2606
  if (!ready) {
2581
2607
  seekTime = target;
2608
+ if (target > 0) {
2609
+ maxSeeTime = Math.max(maxSeeTime, target);
2610
+ if (firstSeekTime < 0) {
2611
+ firstSeekTime = target;
2612
+ }
2613
+ }
2582
2614
  try {
2583
2615
  video.currentTime = target;
2584
2616
  } catch (event2) {
@@ -2591,9 +2623,15 @@ var require_ckplayer = __commonJS({
2591
2623
  if (target < 0) {
2592
2624
  target = 0;
2593
2625
  }
2626
+ if (vars["timeScheduleAdjust"] == 5 && target > maxSeeTime && seekTime && Math.abs(seekTime - target) < 0.5) {
2627
+ maxSeeTime = Math.max(maxSeeTime, target);
2628
+ }
2594
2629
  try {
2595
2630
  video.currentTime = target;
2596
2631
  seekTime = 0;
2632
+ if (target > maxSeeTime && vars["timeScheduleAdjust"] != 5) {
2633
+ maxSeeTime = target;
2634
+ }
2597
2635
  } catch (event2) {
2598
2636
  seekTime = target;
2599
2637
  }
package/dist/react.js CHANGED
@@ -200,10 +200,14 @@ var require_ckplayer = __commonJS({
200
200
  //是否显示错误信息
201
201
  pluginPath: "",
202
202
  //插件与语言包根路径(bundler 下建议配置或设置 window.ckplayerBasePath)
203
- autoPlug: true
203
+ autoPlug: true,
204
204
  //未指定 plug 时,根据视频地址后缀自动选择 hls.js / flv.js / mpegts.js
205
+ preferBuiltinPlug: true,
206
+ //优先加载本包内置插件脚本,避免复用页面上其它版本的全局 Hls/flvjs/mpegts
207
+ cdnFallback: true
208
+ // getPath 失败时是否回退到 jsDelivr(内网可设 false,并配置 pluginPath)
205
209
  };
206
- var ckplayerPlusDefaultCdn = "https://cdn.jsdelivr.net/npm/ckplayer-plus@__VERSION__/dist/";
210
+ var ckplayerPlusDefaultCdn = "https://cdn.jsdelivr.net/npm/ckplayer-plus@1.0.2/dist/";
207
211
  function ckplayerEmbed(videoObj) {
208
212
  var rightMenu = [
209
213
  {
@@ -383,7 +387,11 @@ var require_ckplayer = __commonJS({
383
387
  if (fromScript && fromScript.indexOf(folder + "/") > -1 && fromScript.indexOf("undefined") === -1) {
384
388
  return fromScript;
385
389
  }
390
+ var allowCdn = !vars || vars["cdnFallback"] !== false;
386
391
  var cdn = typeof window !== "undefined" && window.ckplayerPlusCdn ? window.ckplayerPlusCdn : ckplayerPlusDefaultCdn;
392
+ if (!allowCdn || !cdn || cdn.indexOf("1.0.2") > -1) {
393
+ return folder + "/" + file;
394
+ }
387
395
  if (cdn.slice(-1) !== "/") {
388
396
  cdn += "/";
389
397
  }
@@ -659,6 +667,12 @@ var require_ckplayer = __commonJS({
659
667
  } else if (valType(vars["seek"]) == "string" && vars["seek"] !== "" && !isNaN(parseFloat(vars["seek"]))) {
660
668
  seekTime = parseFloat(vars["seek"]);
661
669
  }
670
+ if (seekTime && seekTime > 0) {
671
+ maxSeeTime = Math.max(maxSeeTime, seekTime);
672
+ if (firstSeekTime < 0) {
673
+ firstSeekTime = seekTime;
674
+ }
675
+ }
662
676
  }
663
677
  }, plugPlayer = function(url) {
664
678
  switch (vars["plug"]) {
@@ -721,7 +735,7 @@ var require_ckplayer = __commonJS({
721
735
  video.attr("src", url);
722
736
  }
723
737
  };
724
- if (typeof Hls !== "undefined" && !isUndefined(Hls)) {
738
+ if (typeof Hls !== "undefined" && !isUndefined(Hls) && !vars["preferBuiltinPlug"]) {
725
739
  startHls();
726
740
  return;
727
741
  }
@@ -759,7 +773,7 @@ var require_ckplayer = __commonJS({
759
773
  });
760
774
  }
761
775
  };
762
- if (typeof flvjs !== "undefined" && !isUndefined(flvjs)) {
776
+ if (typeof flvjs !== "undefined" && !isUndefined(flvjs) && !vars["preferBuiltinPlug"]) {
763
777
  startFlv();
764
778
  return;
765
779
  }
@@ -797,7 +811,7 @@ var require_ckplayer = __commonJS({
797
811
  });
798
812
  }
799
813
  };
800
- if (typeof mpegts !== "undefined" && !isUndefined(mpegts)) {
814
+ if (typeof mpegts !== "undefined" && !isUndefined(mpegts) && !vars["preferBuiltinPlug"]) {
801
815
  startMpegts();
802
816
  return;
803
817
  }
@@ -1404,6 +1418,12 @@ var require_ckplayer = __commonJS({
1404
1418
  if (dur && isFinite(dur) && dur > 0 && t >= dur) {
1405
1419
  t = Math.max(0, dur - 0.3);
1406
1420
  }
1421
+ if (t > 0) {
1422
+ maxSeeTime = Math.max(maxSeeTime, t);
1423
+ if (firstSeekTime < 0) {
1424
+ firstSeekTime = t;
1425
+ }
1426
+ }
1407
1427
  seekTime = 0;
1408
1428
  try {
1409
1429
  video.currentTime = t;
@@ -2529,6 +2549,12 @@ var require_ckplayer = __commonJS({
2529
2549
  target = parseFloat(fn2);
2530
2550
  }
2531
2551
  if (target !== null && video) {
2552
+ if (target > 0 && (seekTime && Math.abs(seekTime - target) < 0.5 || vars["seek"] && parseFloat(vars["seek"]) > 0 && Math.abs(parseFloat(vars["seek"]) - target) < 0.5)) {
2553
+ maxSeeTime = Math.max(maxSeeTime, target);
2554
+ if (firstSeekTime < 0) {
2555
+ firstSeekTime = target;
2556
+ }
2557
+ }
2532
2558
  switch (vars["timeScheduleAdjust"]) {
2533
2559
  case 0:
2534
2560
  message(language["timeScheduleAdjust"]["prohibit"]);
@@ -2574,6 +2600,12 @@ var require_ckplayer = __commonJS({
2574
2600
  var ready = video.readyState >= 2 || duration && isFinite(duration) && duration > 0;
2575
2601
  if (!ready) {
2576
2602
  seekTime = target;
2603
+ if (target > 0) {
2604
+ maxSeeTime = Math.max(maxSeeTime, target);
2605
+ if (firstSeekTime < 0) {
2606
+ firstSeekTime = target;
2607
+ }
2608
+ }
2577
2609
  try {
2578
2610
  video.currentTime = target;
2579
2611
  } catch (event2) {
@@ -2586,9 +2618,15 @@ var require_ckplayer = __commonJS({
2586
2618
  if (target < 0) {
2587
2619
  target = 0;
2588
2620
  }
2621
+ if (vars["timeScheduleAdjust"] == 5 && target > maxSeeTime && seekTime && Math.abs(seekTime - target) < 0.5) {
2622
+ maxSeeTime = Math.max(maxSeeTime, target);
2623
+ }
2589
2624
  try {
2590
2625
  video.currentTime = target;
2591
2626
  seekTime = 0;
2627
+ if (target > maxSeeTime && vars["timeScheduleAdjust"] != 5) {
2628
+ maxSeeTime = target;
2629
+ }
2592
2630
  } catch (event2) {
2593
2631
  seekTime = target;
2594
2632
  }
package/dist/vue.cjs CHANGED
@@ -205,10 +205,14 @@ var require_ckplayer = __commonJS({
205
205
  //是否显示错误信息
206
206
  pluginPath: "",
207
207
  //插件与语言包根路径(bundler 下建议配置或设置 window.ckplayerBasePath)
208
- autoPlug: true
208
+ autoPlug: true,
209
209
  //未指定 plug 时,根据视频地址后缀自动选择 hls.js / flv.js / mpegts.js
210
+ preferBuiltinPlug: true,
211
+ //优先加载本包内置插件脚本,避免复用页面上其它版本的全局 Hls/flvjs/mpegts
212
+ cdnFallback: true
213
+ // getPath 失败时是否回退到 jsDelivr(内网可设 false,并配置 pluginPath)
210
214
  };
211
- var ckplayerPlusDefaultCdn = "https://cdn.jsdelivr.net/npm/ckplayer-plus@__VERSION__/dist/";
215
+ var ckplayerPlusDefaultCdn = "https://cdn.jsdelivr.net/npm/ckplayer-plus@1.0.2/dist/";
212
216
  function ckplayerEmbed(videoObj) {
213
217
  var rightMenu = [
214
218
  {
@@ -388,7 +392,11 @@ var require_ckplayer = __commonJS({
388
392
  if (fromScript && fromScript.indexOf(folder + "/") > -1 && fromScript.indexOf("undefined") === -1) {
389
393
  return fromScript;
390
394
  }
395
+ var allowCdn = !vars || vars["cdnFallback"] !== false;
391
396
  var cdn = typeof window !== "undefined" && window.ckplayerPlusCdn ? window.ckplayerPlusCdn : ckplayerPlusDefaultCdn;
397
+ if (!allowCdn || !cdn || cdn.indexOf("1.0.2") > -1) {
398
+ return folder + "/" + file;
399
+ }
392
400
  if (cdn.slice(-1) !== "/") {
393
401
  cdn += "/";
394
402
  }
@@ -664,6 +672,12 @@ var require_ckplayer = __commonJS({
664
672
  } else if (valType(vars["seek"]) == "string" && vars["seek"] !== "" && !isNaN(parseFloat(vars["seek"]))) {
665
673
  seekTime = parseFloat(vars["seek"]);
666
674
  }
675
+ if (seekTime && seekTime > 0) {
676
+ maxSeeTime = Math.max(maxSeeTime, seekTime);
677
+ if (firstSeekTime < 0) {
678
+ firstSeekTime = seekTime;
679
+ }
680
+ }
667
681
  }
668
682
  }, plugPlayer = function(url) {
669
683
  switch (vars["plug"]) {
@@ -726,7 +740,7 @@ var require_ckplayer = __commonJS({
726
740
  video.attr("src", url);
727
741
  }
728
742
  };
729
- if (typeof Hls !== "undefined" && !isUndefined(Hls)) {
743
+ if (typeof Hls !== "undefined" && !isUndefined(Hls) && !vars["preferBuiltinPlug"]) {
730
744
  startHls();
731
745
  return;
732
746
  }
@@ -764,7 +778,7 @@ var require_ckplayer = __commonJS({
764
778
  });
765
779
  }
766
780
  };
767
- if (typeof flvjs !== "undefined" && !isUndefined(flvjs)) {
781
+ if (typeof flvjs !== "undefined" && !isUndefined(flvjs) && !vars["preferBuiltinPlug"]) {
768
782
  startFlv();
769
783
  return;
770
784
  }
@@ -802,7 +816,7 @@ var require_ckplayer = __commonJS({
802
816
  });
803
817
  }
804
818
  };
805
- if (typeof mpegts !== "undefined" && !isUndefined(mpegts)) {
819
+ if (typeof mpegts !== "undefined" && !isUndefined(mpegts) && !vars["preferBuiltinPlug"]) {
806
820
  startMpegts();
807
821
  return;
808
822
  }
@@ -1409,6 +1423,12 @@ var require_ckplayer = __commonJS({
1409
1423
  if (dur && isFinite(dur) && dur > 0 && t >= dur) {
1410
1424
  t = Math.max(0, dur - 0.3);
1411
1425
  }
1426
+ if (t > 0) {
1427
+ maxSeeTime = Math.max(maxSeeTime, t);
1428
+ if (firstSeekTime < 0) {
1429
+ firstSeekTime = t;
1430
+ }
1431
+ }
1412
1432
  seekTime = 0;
1413
1433
  try {
1414
1434
  video.currentTime = t;
@@ -2534,6 +2554,12 @@ var require_ckplayer = __commonJS({
2534
2554
  target = parseFloat(fn2);
2535
2555
  }
2536
2556
  if (target !== null && video) {
2557
+ if (target > 0 && (seekTime && Math.abs(seekTime - target) < 0.5 || vars["seek"] && parseFloat(vars["seek"]) > 0 && Math.abs(parseFloat(vars["seek"]) - target) < 0.5)) {
2558
+ maxSeeTime = Math.max(maxSeeTime, target);
2559
+ if (firstSeekTime < 0) {
2560
+ firstSeekTime = target;
2561
+ }
2562
+ }
2537
2563
  switch (vars["timeScheduleAdjust"]) {
2538
2564
  case 0:
2539
2565
  message(language["timeScheduleAdjust"]["prohibit"]);
@@ -2579,6 +2605,12 @@ var require_ckplayer = __commonJS({
2579
2605
  var ready = video.readyState >= 2 || duration && isFinite(duration) && duration > 0;
2580
2606
  if (!ready) {
2581
2607
  seekTime = target;
2608
+ if (target > 0) {
2609
+ maxSeeTime = Math.max(maxSeeTime, target);
2610
+ if (firstSeekTime < 0) {
2611
+ firstSeekTime = target;
2612
+ }
2613
+ }
2582
2614
  try {
2583
2615
  video.currentTime = target;
2584
2616
  } catch (event2) {
@@ -2591,9 +2623,15 @@ var require_ckplayer = __commonJS({
2591
2623
  if (target < 0) {
2592
2624
  target = 0;
2593
2625
  }
2626
+ if (vars["timeScheduleAdjust"] == 5 && target > maxSeeTime && seekTime && Math.abs(seekTime - target) < 0.5) {
2627
+ maxSeeTime = Math.max(maxSeeTime, target);
2628
+ }
2594
2629
  try {
2595
2630
  video.currentTime = target;
2596
2631
  seekTime = 0;
2632
+ if (target > maxSeeTime && vars["timeScheduleAdjust"] != 5) {
2633
+ maxSeeTime = target;
2634
+ }
2597
2635
  } catch (event2) {
2598
2636
  seekTime = target;
2599
2637
  }