HTML5使用canvas實(shí)現(xiàn)代碼流瀑布的方法-創(chuàng)新互聯(lián)

本篇文章給大家分享HTML5 canvas代碼流瀑布的具體代碼。有一定的參考價(jià)值,有需要的朋友可以參考一下,希望對(duì)大家有所幫助。

創(chuàng)新互聯(lián)公司制作網(wǎng)站網(wǎng)頁(yè)找三站合一網(wǎng)站制作公司,專注于網(wǎng)頁(yè)設(shè)計(jì),成都網(wǎng)站制作、成都網(wǎng)站設(shè)計(jì)、外貿(mào)營(yíng)銷(xiāo)網(wǎng)站建設(shè),網(wǎng)站設(shè)計(jì),企業(yè)網(wǎng)站搭建,網(wǎng)站開(kāi)發(fā),建網(wǎng)站業(yè)務(wù),680元做網(wǎng)站,已為上千多家服務(wù),創(chuàng)新互聯(lián)公司網(wǎng)站建設(shè)將一如既往的為我們的客戶提供最優(yōu)質(zhì)的網(wǎng)站建設(shè)、網(wǎng)絡(luò)營(yíng)銷(xiāo)推廣服務(wù)!

HTML5使用canvas實(shí)現(xiàn)代碼流瀑布的方法

在js部分寫(xiě)canvas代碼,有詳細(xì)注釋

html部分:

一個(gè)canvas元素:

<canvas id="canvas" ></canvas>

css部分:

<style>
  *{
   padding: 0;
   margin: 0;
  }
  canvas{
   background-color: #111;
  }
  body{
   overflow: hidden;
  
  }
</style>

js部分

<script>
  var canvas = document.getElementById('canvas');
  var context = canvas.getContext('2d');
  // 獲取瀏覽器的寬度和高度
  var w = window.innerWidth;
  var h = window.innerHeight;
  // 設(shè)置canvas的寬高
  canvas.width = w;
  canvas.height = h;
  // 每個(gè)文字的大小
  var fontSize = 16;
  // 一共可以有多少列文字
  var col = Math.floor(w / fontSize);
  // 記錄每列文字的y軸坐標(biāo)
  var cpy = [];
  for(var i = 0;i< col; i++)
  {
   cpy[i] = 1;
  }
  //定義文字
  var str = "Javascriphafhsdhfsfsf{}";
  // 繪制
  draw();
  setInterval(draw,30);
  function draw(){
   context.beginPath();
   // 背景填充顏色
   context.fillStyle = "rgba(0,0,0,0.05)";
   context.fillRect(0,0,w,h);
   // 設(shè)置字體大小
   context.font = fontSize +"px bold 微軟雅黑 ";
   // 設(shè)置字體顏色
   context.fillStyle = "#00cc33";
   for(var i = 0; i < col;i++)
   {
    var index = Math.floor(Math.random()*str.length);
    var x = i*fontSize;
    var y = cpy[i]*fontSize;
    context.fillText(str.charAt(index),x,y);
    if(y >= h && Math.random()> 0.99)// 出現(xiàn)時(shí)間延遲的效果
    {
     cpy[i]=0;// 只要Math.random> 0.99 時(shí)才縱坐標(biāo)從0開(kāi)始寫(xiě)字
    }
    cpy[i]++;// 數(shù)組值加一,以便下一次寫(xiě)的字在下面一行
   }
  }
</script>

動(dòng)態(tài)效果圖:

HTML5使用canvas實(shí)現(xiàn)代碼流瀑布的方法

以上就是HTML5 canvas如何實(shí)現(xiàn)代碼流瀑布?(附代碼)的詳細(xì)內(nèi)容,更多請(qǐng)關(guān)注創(chuàng)新互聯(lián)成都網(wǎng)站設(shè)計(jì)公司其它相關(guān)文章!

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。

網(wǎng)頁(yè)名稱:HTML5使用canvas實(shí)現(xiàn)代碼流瀑布的方法-創(chuàng)新互聯(lián)
標(biāo)題網(wǎng)址:http://bm7419.com/article28/dpdijp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供云服務(wù)器微信小程序、網(wǎng)站排名、企業(yè)建站外貿(mào)網(wǎng)站建設(shè)、品牌網(wǎng)站設(shè)計(jì)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

外貿(mào)網(wǎng)站建設(shè)