jQuery實(shí)現(xiàn)簡(jiǎn)單彈幕制作
在現(xiàn)在的視頻網(wǎng)站,我們?cè)诳匆曨l的時(shí)候經(jīng)常會(huì)有彈幕出現(xiàn),那么怎么通過(guò)js實(shí)現(xiàn)這一效果呢,下面介紹一種簡(jiǎn)單的方法。
首先,搭好結(jié)構(gòu):
頁(yè)面中先放一個(gè)視頻,視頻下部放一個(gè)input 標(biāo)簽和button按鈕,代碼如下:
<div class="box"> <div class="top"> <video src="./static/夢(mèng)然-少年 .mp4" controls autoplay muted></audio> </div> <div class="foot"> <input type="text" name="" id="text"> <input type="button" value="發(fā)送" id="btn"> </div> </div>
再來(lái)寫(xiě)js
首先,我們需要包裝三個(gè)函數(shù),也就是發(fā)送到彈幕的隨機(jī)顏色、隨機(jī)高度和隨機(jī)字體大?。淮a如下:
<script> //隨機(jī)獲取字體顏色函數(shù) function getRandomColor(){ var r = Math.floor(Math.random()*255); var g = Math.floor(Math.random()*255); var b = Math.floor(Math.random()*255); return 'rgb('+r+','+g+','+ b +')' } //隨機(jī)獲取高度函數(shù) function getRandomHeight(){ var height = $('.top').height() return Math.random()*height-30 } //隨機(jī)獲取字體大小函數(shù) function getRandomFontSize(){ return Math.floor(Math.random()*60) }
現(xiàn)在我們需要獲取用戶(hù)輸入的內(nèi)容在將內(nèi)容顯示到頁(yè)面中,并且移動(dòng),一直到頁(yè)面外就消除,代碼如下:
//事件注冊(cè) $('#btn').on('click',function(){ if($('#text').val() ==''){ return } $('<span></span>').text($('#text').val()).css({ 'position':'absolute', 'width':200, 'height':50, 'color':getRandomColor(), 'fontSize':getRandomFontSize(), 'right':-200, 'top':getRandomHeight() }).animate({right:1000},10000,'linear',function(){ $(this).remove() }).appendTo($('.top')) $('#text').val('') })
最后將鍵盤(pán)回車(chē)鍵也綁定事件,讓用戶(hù)輸入內(nèi)容后按下回車(chē)鍵和按發(fā)送按鈕有同樣的效果:
$('#text').keydown(function(event){ if($('#text').val() ==''){ return } if(event.keyCode == 13){ $('#btn').click() } }) </script>
最終效果如下
那么,現(xiàn)在一個(gè)簡(jiǎn)單的彈幕就制作完成了。
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
js制作帶有遮罩彈出層實(shí)現(xiàn)登錄注冊(cè)表單特效代碼分享
這篇文章主要為大家詳細(xì)介紹了js制作帶有遮罩彈出層實(shí)現(xiàn)登錄注冊(cè)表單代碼特效,推薦給大家,有需要的小伙伴可以參考下。2015-09-09jquery網(wǎng)頁(yè)回到頂部效果(圖標(biāo)漸隱,自寫(xiě))
當(dāng)網(wǎng)頁(yè)內(nèi)容草雞多的時(shí)候,用戶(hù)就需要有個(gè)按鈕快速回到頂部,于是用js來(lái)實(shí)現(xiàn)下,畫(huà)布多說(shuō),直接上代碼2014-06-06Jquery和BigFileUpload實(shí)現(xiàn)大文件上傳及進(jìn)度條顯示
這篇文章主要介紹了Jquery和BigFileUpload實(shí)現(xiàn)大文件上傳及進(jìn)度條顯示的相關(guān)資料,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2016-06-06使用prop解決一個(gè)checkbox選中后再次選中失效的問(wèn)題
下面小編就為大家?guī)?lái)一篇使用prop解決一個(gè)checkbox選中后再次選中失效的問(wèn)題。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-07-07jquery滾動(dòng)組件(vticker.js)實(shí)現(xiàn)頁(yè)面動(dòng)態(tài)數(shù)據(jù)的滾動(dòng)效果
本文為大家想你想介紹下jquery實(shí)現(xiàn)頁(yè)面動(dòng)態(tài)數(shù)據(jù)的滾動(dòng)效果。似乎只有通過(guò)div-ul-li標(biāo)簽嵌套的方式才能實(shí)現(xiàn)表格多行多列的滾動(dòng)效果2013-07-07jQuery動(dòng)畫(huà)效果實(shí)現(xiàn)圖片無(wú)縫連續(xù)滾動(dòng)
這篇文章主要為大家介紹了jQuery動(dòng)畫(huà)效果實(shí)現(xiàn)圖片無(wú)縫連續(xù)滾動(dòng),實(shí)現(xiàn)類(lèi)似連續(xù)不間斷的滾動(dòng)廣告位,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-01-01jquery拖拽效果完整實(shí)例(附demo源碼下載)
這篇文章主要介紹了jquery拖拽效果實(shí)現(xiàn)方法,詳細(xì)介紹了jQuery實(shí)現(xiàn)拖拽功能的具體步驟與相關(guān)技巧,并附代碼了demo源碼供讀者下載參考,需要的朋友可以參考下2016-01-01jQuery實(shí)現(xiàn)按鈕只點(diǎn)擊一次后就取消點(diǎn)擊事件綁定的方法
這篇文章主要介紹了jQuery實(shí)現(xiàn)按鈕只點(diǎn)擊一次后就取消點(diǎn)擊事件綁定的方法,可實(shí)現(xiàn)點(diǎn)擊按鈕后取消onclick事件綁定的功能,需要的朋友可以參考下2015-06-06