字幕字體滾動插件——scroxt.js

README

scroxt.js Overview

scroxt.js是一個字體滾動的插件庫,包括視頻彈幕滾動,直播彈幕、直播彈幕強制模式、單行水平左右滾動、文本垂直滾動上下,用于簡單快捷生成滾動字體。性能優(yōu)秀,通過CPU加速,緩存字體元素,幀運動,達到最流暢的效果。兼容Chrome、Firefox、Opera、IE9及IE9以上瀏覽器。

Installation

npm install --save scroxt

更新

2017.11.08 視頻彈幕增加播放,暫停,重播,快進,快退接口。詳細查看視頻彈幕

Getting Started

你能很方便的使用插件用于字體滾動,scroxt是對一個對象,滾動方式不同對應(yīng)不同的類名,像水平滾動的類名是Horizontal作為scroxt的屬性,使用的時候只要new scroxt.Horizontal來生成滾動字體。這里有詳細的例子

demo

一、水平滾動

new scroxt.Horizontal({
    target: ".my-ele",
    data: ['第一條','第2條','第3條'],
    speed: -5
});

參數(shù):

  • target:水平滾動字體的容器css選擇器
  • data:字體數(shù)組
  • speed: 滾動速度,單位幀移動的距離= speed * 0.1。speed的大小范圍為 1-10

二、垂直滾動

new scroxt.Vertical({
    target: ".my-ele",
    data: ['第一條','第2條','第3條','第4條','第5條'],
    speed: 5
});

參數(shù):

  • target:垂直滾動字體的容器css選擇器
  • data:字體數(shù)組
  • speed: 滾動速度,speed的大小范圍為 1-10。單位幀移動的距離= speed * 0.1。

三、視頻彈幕

...
<div class="scroll-box-barrage">
    <div class="scroxt-video-barrage">
        <video id="my-video" preload="auto" width="640" height="auto">
          <source src="http://14.215.100.242/v.cctv.com/flash/mp4video6/TMS/2011/01/05/cf752b1c12ce452b3040cab2f90bc265_h264818000nero_aac32-1.mp4" type='video/mp4'>
        </video>
    </div>
    <div class="play">播放</div>
    <div class="pause">暫停</div>
    <div class="fast-forward">快進</div>
</div>
<script type="text/javascript" src="./dist/js/scroxt.js"></script>
<script type="text/javascript">
    var scroxtBarrage = new scroxt.Barrage({
        video: "#my-video",
        dataTime: [{
            data:"第一條彈幕",
            time:1
        },{
            data:"第二條彈幕",
            time:3
        },{
            data:"第三條彈幕",
            time:2
        }]
    });
    //播放
    document.querySelector(".play").addEventListener("click",function(){
        scroxtBarrage.play();
    });
    //暫停
    document.querySelector(".pause").addEventListener("click",function(){
        scroxtBarrage.stop();
    });
    //前進5s
    document.querySelector(".fast-forward").addEventListener("click",function(){
        scroxtBarrage.moveInterval(5);
    });
</script>
...

scroxt.Barrage參數(shù):

  • video:視頻標簽的css選擇器
  • dataTime:彈幕數(shù)組,數(shù)組每一項由data和time字段組成,data是每條彈幕的內(nèi)容,time是彈幕出現(xiàn)的時間/秒單位(video播放的時間);

scroxt.Barrage實例參數(shù):

  • play(): 開始播放
  • stop(): 暫停播放
  • restart(): 重新播放
  • moveInterval(s): 快進s秒
  • moveInterval(-s): 后退s秒

四-1、直播彈幕

...
<div class="scroll-box-barrage">
    <div class="scroxt-video-barrage" style="width: 100%;">
        <img class="video-bg" src="./img/bg.png" style="width: 100%;height: auto;display: block;vertical-align: middle;">
    </div>
</div>
<script type="text/javascript" src="./dist/js/scroxt.js"></script>
<script type="text/javascript">
var scroxtLive = new scroxt.Live({
    target: ".scroxt-video-barrage",
});
var i = 0;
setInterval(function(){
    i++;
    scroxtLive.addBarrage(i+"你好啊")
},100)
//用戶自己發(fā)的彈幕
setTimeout(function(){
    scroxtLive.addBarrage("一一一一一一一一一一",true)
},3000);
</script>
...

參數(shù):

  • target:目標容器元素
    方法:
  • addBarrage:添加彈幕

四-2、直播彈幕兼容低版本的瀏覽器

火狐瀏覽器、IE9以下、瀏覽器操作元素滾動達到一定數(shù)量會出現(xiàn)嚴重掉幀的情況。所以在強制模式下,插件控制彈幕數(shù)量(屏幕最多65條彈幕)。但用戶自己看到的彈幕不能缺失,當用戶自己發(fā)彈幕時,通過給addBarrage方法傳第二個參數(shù)true,只在用戶自己電腦上出現(xiàn)彈幕,已達到欺騙的目的。api如下:

<script type="text/javascript">
var scroxtLive = new scroxt.Live({
    target: ".scroxt-video-barrage",
    strongLock:true
});

//用戶自己發(fā)的彈幕
setTimeout(function(){
    scroxtLive.addBarrage("一一一一一一一一一一",true)
},3000);
</script>

聯(lián)系作者:qq-1737752975

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容