首页站内杂志技术文摘
文章内容页

Dplayer前置广告视频,暂停广告,与试看功能

  • 作者:雨祺
  • 来源: 原创
  • 发表于2021-08-29 10:48:10
  • 被阅读0
  • DPlayer 是一个支持弹幕的 HTML5 视频播放器。支持 Bilibili 视频和 danmaku,支持HLS,FLV,MPEG DASH,WebTorrent以及其他视频格式,支持截屏、热键、切换清晰度以及字幕等。在使用Dplayer播放视频时有时候,我们可能会用到视频的前置广告视频啥的,或是要先放个自个的品牌宣传视频,然后再进行播放正片。

    今天就介绍下吧。

    1,引入JQ,这个很重要

    2,暂停贴片广告

    3,前置视频贴片广告

    4,前置HTML贴片广告

    5,整合

    CSS部分:

    1. <style type="text/css"
    2. html,body{height:100%;margin:0;padding:0;overflow:hidden;text-align:center;background:#181818;} 
    3. *{margin:0;border:0;padding:0;text-decoration:none} 
    4. #dplayer{height:100%;} 
    5. .dplayer-logo{max-width: 150px;max-height: 50px;left: auto;right: 5%;top: 5%;} 
    6. #ad{position: absolute;z-index: 99999;width:100%;height:100%} 
    7. .closeclick{display: inline-block;width: 100px;height: 35px;line-height: 35px;text-align: center;font-size: 14px;border-radius: 22px;margin: 0px 10px;color: #2082B3;overflow: hidden;box-shadow: 0px 2px 3px rgba(0,0,0,.3);background: #fff;position: absolute; z-index: 9999;top:20px;right: 35px;} 
    8. .dplayer_nobuy_tips{position: absolute;z-index: 9;color: #fff;font-size: 14px;height: 30px;line-height: 30px;background-color: rgba(0, 0, 0, 0.5);width: 100%;text-align: center;margin: 0 20px;} 
    9. .dplayer_buybox{position: absolute;top: 0;align-items: center;width: 100%;height: 100%;background: rgba(0, 0, 0, 0.8);z-index: 998;color: #fff;text-align: center;display: flex;font-size: 14px;} 
    10. .dplayer_buybox-content{width:100%;height: 100%;background: rgba(0, 0, 0, 0.3);} 
    11. .dplayer_buybox-tipsbtn {background: #f60;padding: 5px 15px;border-radius: 2px;cursor: pointer;color: #fff;margin-top: 10px;display: inline-block;} 
    12. .dplayer_buybox-content>span {margin: 0 5px;color: #f60;} 
    13. .dplayer_buybox-tips {position: absolute;top:50%;left:50%;width:100%;transform:translate(-50%,-100%);text-align: center;color: #fff;font-size: 14px;line-height: 30px;text-align: center;} 
    14. </style> 

    HTML部分,放在播放 <div id="dplayer"></div> 上方

    1. <div id="dplayer_nobuybox"><div class="dplayer_nobuy_tips">【付费视频】您可以免费试看20秒,购买后可观看全部。</div></div> 
    2. <div id="ad" > 
    3. <iframe id="player_pread" class="embed-responsive-item" src="https://www.meiweny.cn/d/file/sanwen/tianyuan/2021-08-25/72cb5c72cbdc88fd0c5bebe92badc707.jpg" frameborder="0" scrolling="no" allowtransparency="true" style="position:absolute;z-index:2;top:0px;left:0px;width:100%;height:100%"></iframe> 
    4. <a class="closeclick" href="javascript:;"  onclick="closeclick()">跳过<em id="adindextime"></em></a> 
    5. </div> 
    6. <div id="dplayer_buybox" class="dplayer_buybox" style="display:none;">        
    7.  <div class="dplayer_buybox-content"
    8.  <div class="dplayer_buybox-tips">该视频需要<span>付费购买</span>才可以观看完整版<br> 
    9.  <m class="dplayer_buybox-tipsbtn">购买</m> 
    10. </div> 
    11.  </div> 
    12. </div> 
    var dp = new DPlayer({ 上方放入
    1. var adpreh_time = "20";//前置广告显示时间 
    2. var shikan_time = "20";//试看时间 
    3. var adpau = 'https://www.meiweny.cn/d/file/sanwen/tianyuan/2021-08-25/72cb5c72cbdc88fd0c5bebe92badc707.jpg';//暂停广告 
    4. function remove(){ 
    5. $('#player_pause').remove(); 
    6. function pause(){ 
    7. $width = $('#dplayer').width()/2; 
    8. $height = $('#dplayer').height()/2; 
    9. $top = $('#dplayer').height()/4; 
    10. $left = $('#dplayer').width()/4; 
    11. $('#dplayer').before('<iframe id="player_pause" class="embed-responsive-item" src="'+ adpau +'" frameborder="0" scrolling="no" allowtransparency="true" style="position:absolute;z-index:2;top:'+$top+'px;left:'+$left+'px;width:'+$width+'px;height:'+$height+'px"></iframe>'); 
    var dp = new DPlayer({//省略播放器配置参数});下方放入
    1. dp.on('timeupdate'function () { 
    2. if (dp.dplayer.currentTime > shikan_time) {//视频时间,单位’秒‘,建议减1秒 
    3. dp.pause(); 
    4. dp.dplayer.currentTime = 0; 
    5. $("#dplayer_buybox").show(); 
    6. $('#player_pause').remove(); 
    7. $('#dplayer_nobuybox').remove();             
    8. }); 
    9. dp.on('pause'function () { 
    10. pause(); 
    11. }) 
    12. dp.on('play'function () { 
    13. remove(); 
    14. });      
    15. function closeclick() { 
    16. $('#ad').remove(); 
    17. $("#player_predplayer").show(); 
    18. dp.play(); 
    19. function clickclose() { 
    20. $('#ad').remove() 
    21. $("#player_predplayer").show(); 
    22. dp.play(); 
    23. $(function() {      
    24. $("#player_pread").css('width',$('#ad').width()/1.3); 
    25. $("#player_pread").css('height',$('#ad').height()/1.3); 
    26. $("#player_pread").css('top',$('#ad').height()/9); 
    27. $("#player_pread").css('left',$('#ad').width()/9);  
    28. var i = adpreh_time;//前置HTML广告时间 
    29. setTimeout(function() { 
    30. closeclick(); 
    31. }, i * 1000); 
    32. after(); 
    33. function after() { 
    34. if (i == 0) { 
    35. $("#adindextime").empty().append(i); 
    36. setTimeout(function() { 
    37. after(); 
    38. }, 1000); 
    39. }  
    40. else { 
    41. $("#adindextime").empty().append(i); 
    42. i = i - 1; 
    43. setTimeout(function() { 
    44. after(); 
    45. }, 1000); 
    46. }  
    47. }); 
    最后附上整合版
    1. <!DOCTYPE html> 
    2. <html xmlns="http://www.w3.org/1999/xhtml"
    3. <head> 
    4. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
    5. <meta name="referrer" content="no-referrer" /> 
    6. <meta http-equiv="Access-Control-Allow-Origin" content="*" /> 
    7. <meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0" name="viewport" />  
    8. <title>播放器</title> 
    9. <link href="https://www.meiweny.cn/e/m/DPlayer/DPlayer.min.css" rel="stylesheet"
    10. <script type="text/javascript" src="https://www.meiweny.cn/e/m/DPlayer/flv.js"></script> 
    11. <script type="text/javascript" src="https://www.meiweny.cn/e/m/DPlayer/hls.js"></script> 
    12. <script src="https://cdn.jsdelivr.net/npm/cdnbye@latest"></script> 
    13. <script src="https://www.meiweny.cn/e/m/DPlayer/DPlayer.min.js"></script> 
    14. <script type="text/javascript" src="https://www.meiweny.cn/e/m/DPlayer/md5.min.js"></script> 
    15. <script type="text/javascript" src="https://www.meiweny.cn/e/m//dasang/js/jquery.js"></script> 
    16. <style type="text/css"
    17. html,body{height:100%;margin:0;padding:0;overflow:hidden;text-align:center;background:#181818;} 
    18. *{margin:0;border:0;padding:0;text-decoration:none} 
    19. #dplayer{height:100%;} 
    20. .dplayer-logo{max-width: 150px;max-height: 50px;left: auto;right: 5%;top: 5%;} 
    21. #ad{position: absolute;z-index: 99999;width:100%;height:100%} 
    22. .closeclick{display: inline-block;width: 100px;height: 35px;line-height: 35px;text-align: center;font-size: 14px;border-radius: 22px;margin: 0px 10px;color: #2082B3;overflow: hidden;box-shadow: 0px 2px 3px rgba(0,0,0,.3);background: #fff;position: absolute; z-index: 9999;top:20px;right: 35px;} 
    23. .dplayer_nobuy_tips{position: absolute;z-index: 9;color: #fff;font-size: 14px;height: 30px;line-height: 30px;background-color: rgba(0, 0, 0, 0.5);width: 100%;text-align: center;margin: 0 20px;} 
    24. .dplayer_buybox{position: absolute;top: 0;align-items: center;width: 100%;height: 100%;background: rgba(0, 0, 0, 0.8);z-index: 998;color: #fff;text-align: center;display: flex;font-size: 14px;} 
    25. .dplayer_buybox-content{width:100%;height: 100%;background: rgba(0, 0, 0, 0.3);} 
    26. .dplayer_buybox-tipsbtn {background: #f60;padding: 5px 15px;border-radius: 2px;cursor: pointer;color: #fff;margin-top: 10px;display: inline-block;} 
    27. .dplayer_buybox-content>span {margin: 0 5px;color: #f60;} 
    28. .dplayer_buybox-tips {position: absolute;top:50%;left:50%;width:100%;transform:translate(-50%,-100%);text-align: center;color: #fff;font-size: 14px;line-height: 30px;text-align: center;} 
    29. </style> 
    30. <div id="dplayer_nobuybox"><div class="dplayer_nobuy_tips">【付费视频】您可以免费试看20秒,购买后可观看全部。</div></div> 
    31. <div id="ad" > 
    32. <iframe id="player_pread" class="embed-responsive-item" src="https://www.meiweny.cn/d/file/sanwen/tianyuan/2021-08-25/72cb5c72cbdc88fd0c5bebe92badc707.jpg" frameborder="0" scrolling="no" allowtransparency="true" style="position:absolute;z-index:2;top:0px;left:0px;width:100%;height:100%"></iframe> 
    33. <a class="closeclick" href="javascript:;"  onclick="closeclick()">跳过<em id="adindextime"></em></a> 
    34. </div> 
    35. <div id="dplayer_buybox" class="dplayer_buybox" style="display:none;"
    36.            
    37.         <div class="dplayer_buybox-content"
    38.                 <div class="dplayer_buybox-tips">该视频需要<span>付费购买</span>才可以观看完整版<br> 
    39.                         <m class="dplayer_buybox-tipsbtn">购买</m> 
    40.                 </div> 
    41.         </div> 
    42. </div> 
    43. <div id="dplayer"></div> 
    44.    
    45.    
    46. <script type="text/javascript"
    47. var adpreh_time = "20";//前置广告显示时间 
    48. var shikan_time = "20";//试看时间 
    49. var adpau = 'https://www.meiweny.cn/d/file/sanwen/tianyuan/2021-08-25/72cb5c72cbdc88fd0c5bebe92badc707.jpg';//暂停广告 
    50. function remove(){ 
    51. $('#player_pause').remove(); 
    52. function pause(){ 
    53. $width = $('#dplayer').width()/2; 
    54. $height = $('#dplayer').height()/2; 
    55. $top = $('#dplayer').height()/4; 
    56. $left = $('#dplayer').width()/4; 
    57. $('#dplayer').before('<iframe id="player_pause" class="embed-responsive-item" src="'+ adpau +'" frameborder="0" scrolling="no" allowtransparency="true" style="position:absolute;z-index:2;top:'+$top+'px;left:'+$left+'px;width:'+$width+'px;height:'+$height+'px"></iframe>'); 
    58.    
    59.  
    60.  
    61.  
    62.      
    63. var dp = new DPlayer({ 
    64.     container: document.getElementById('dplayer'), 
    65.     //screenshot: true,//截屏 
    66.     theme: '#4C8FE8',//进度条颜色 
    67.     volume: 1.0,//音量 
    68.     loop: true,//循环 
    69.     logo: '',//LOGO 
    70.     //autoplay: true,//自动播放 
    71.     video: { 
    72.         quality: [{ 
    73.             name: '高清'
    74.             url:'https://vod.cdbaiyou.com/20210721/km18yXmO/1059kb/hls/index.m3u8'
    75.             //type: 'normal' 
    76.         }], 
    77.               pic: 'https://ww3.sinaimg.cn/large/0060lm7Tly1fke6b991zzg30jq0dwaar.gif'
    78.         defaultQuality: 0 
    79.     }, 
    80.  
    81. }); 
    82.  
    83.      
    84.  
    85. dp.on('timeupdate'function () { 
    86. if (dp.dplayer.currentTime > shikan_time) {//视频时间,单位’秒‘,建议减1秒 
    87. dp.pause(); 
    88. dp.dplayer.currentTime = 0; 
    89. $("#dplayer_buybox").show(); 
    90. $('#player_pause').remove(); 
    91. $('#dplayer_nobuybox').remove();             
    92. }); 
    93. dp.on('pause'function () { 
    94. pause(); 
    95. }) 
    96. dp.on('play'function () { 
    97. remove(); 
    98. });      
    99. function closeclick() { 
    100. $('#ad').remove(); 
    101. $("#player_predplayer").show(); 
    102. dp.play(); 
    103. function clickclose() { 
    104. $('#ad').remove() 
    105. $("#player_predplayer").show(); 
    106. dp.play(); 
    107. $(function() {      
    108. $("#player_pread").css('width',$('#ad').width()/1.3); 
    109. $("#player_pread").css('height',$('#ad').height()/1.3); 
    110. $("#player_pread").css('top',$('#ad').height()/9); 
    111. $("#player_pread").css('left',$('#ad').width()/9);  
    112. var i = adpreh_time;//前置HTML广告时间 
    113. setTimeout(function() { 
    114. closeclick(); 
    115. }, i * 1000); 
    116. after(); 
    117. function after() { 
    118. if (i == 0) { 
    119. $("#adindextime").empty().append(i); 
    120. setTimeout(function() { 
    121. after(); 
    122. }, 1000); 
    123. }  
    124. else { 
    125. $("#adindextime").empty().append(i); 
    126. i = i - 1; 
    127. setTimeout(function() { 
    128. after(); 
    129. }, 1000); 
    130. }  
    131. }); 
    132. </script> 
    133.   </body> 
    134. </html> 
    DPlayer 是一个支持弹幕的 HTML5 视频播放器。支持 Bilibili 视频和 danmaku,支持HLS,FLV,MPEG DASH,WebTorrent以及其他视频格式,支持截屏、热键、切换清晰度以及字幕等。更多相关二次开发敬请期待!
    【审核人:站长】

        标题:Dplayer前置广告视频,暂停广告,与试看功能

        本文链接:https://www.meiweny.cn/zazhi/zhongwangjiaocheng/23.html

        赞一下

        深度阅读

        • 您也可以注册成为美文苑的作者,发表您的原创作品、分享您的心情!

        阅读记录

          关注美文苑