溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

基于JavaScript實(shí)現(xiàn)彈幕特效

發(fā)布時(shí)間:2020-08-20 12:28:01 來(lái)源:腳本之家 閱讀:137 作者:01-01 欄目:web開(kāi)發(fā)

本文實(shí)例為大家分享了js實(shí)現(xiàn)彈幕特效的具體代碼,供大家參考,具體內(nèi)容如下

此處使用HBuilder編譯,最簡(jiǎn)單的彈幕效果,希望各位前輩不吝指教。

注意用的是jquery-2.0.3.js 

<!DOCTYPE html> 
<html> 
 <head> 
 <meta charset="utf-8" /> 
 <title></title> 
 </head> 
 
 <style type="text/css"> 
 *{ 
  padding: 0; 
  margin: 0; 
 } 
 .shooter{ 
  width: 600px; 
  height: 60px; 
  /*background: black;*/ 
  margin: 0 auto; 
 } 
 .shooter input{ 
  width: 300px; 
  height: 40px; 
  border: none; 
  border-radius: 7px; 
  box-shadow: 0 0 8px rgba(182,195,214,0.6)inset; 
  padding-left: 15px; 
  margin-top: 10px; 
 } 
 .shooter button{ 
  width: 80px; 
  height: 40px; 
  border: none; 
  margin-left: 10px; 
  background-color:#339B53; 
  border-radius:8px; 
  color: white; 
  cursor: pointer; 
 } 
  
 .shooter button:hover{ 
  font-size: 14px; 
  background:#008000; 
 } 
 .content{ 
  width: 100%; 
  height: 600px; 
  background: gray; 
  position: relative; 
  overflow: hidden; 
 } 
  
 .bullet{ 
  position: absolute; 
  /*right: 0;*/ 
  /*left:1600px;*/ 
  word-break: keep-all; 
  /*不讓單詞折行*/ 
  
  
 } 
  
 </style> 
 
 <body> 
 <div class="shooter"> 
  
  <input type="text"/> 
  <button>發(fā)射</button> 
  
 </div> 
 <div class="content"> 
  
 </div> 
 <script type="text/javascript" src="js/jquery-2.0.3.js" ></script> 
  
 <script type="text/javascript"> 
  $("button").click(function(){ 
   
  var msg = $("input").val(); 
  //取出輸入框內(nèi)容 
   
  if(msg.length > 15){ 
   
   alert("字?jǐn)?shù)不得超過(guò)15個(gè)!"); 
   return; 
  } 
   
  var bullet = $("<div>"); 
  //生成一條彈幕 
  bullet.text(msg); 
  //將輸入框內(nèi)容放置到div中 
  bullet.addClass("bullet"); 
  //為bullet這個(gè)div添加樣式bullet 
  bullet.css("top",Math.round(Math.random()*500)); 
  //隨機(jī)設(shè)置彈幕位置 
  bullet.css("left","1600px"); 
  bullet.css("font-size",Math.round(Math.random()*60)+12+"px"); 
  bullet.css("color","rgb("+Math.round(Math.random()*255)+","+Math.round(Math.random()*255)+","+Math.round(Math.random()*255)+")"); 
//  alert(window.getComputedStyle(bullet,null).width); 
  bullet.animate({ 
   left:-1000//此處視為bug,應(yīng)該隨著彈幕的長(zhǎng)短而變化 
  },Math.round(Math.random()*9000)+1000,"linear", function(){ 
   bullet.remove(); 
   //當(dāng)運(yùn)動(dòng)結(jié)束時(shí),刪除彈幕 
  }); 
   
  $(".content").append(bullet); 
  //將彈幕添加到屏幕中 
   
   
  }); 
 </script> 
 </body> 
</html>

 下面是展示的彈幕效果(顯示的白線在谷歌瀏覽器中是看不出來(lái)的,在錄制時(shí)會(huì)看出來(lái),此處又一bug):

基于JavaScript實(shí)現(xiàn)彈幕特效

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持億速云。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI