本文實例講述了jQuery模擬黑客帝國矩陣效果的方法。分享給大家供大家參考。具體實現方法如下:
html部分如下:
<div id="container"> <div style="width:10px; word-break :break-all"> 10001001110010010010000 </div> <div style="width:10px; word-break :break-all;margin-left:30px"> the answer is in your mind </div> </div>
css部分如下:
#container div{padding:10px;position:absolute;border:0px dotted brown;width:0px;color:green;text-shadow: 1px 1px 3px #cccccc;} .text{padding:10px;color:#ccc;} #panel{width:400px;margin:0 auto;color:white;margin-top:20%;font-size:15px;font-weight:bold;z-index:99999;background:black;}
js部分如下:
$(function() { for (var i = 0; i < 3; i++) $('div', '#container').clone().prependTo('#container'); //克隆一遍增加數據 range(); setInterval(drop, 150); //速度150毫秒 }); //排列 function range() { var num = 1; $('div', '#container').each(function(i) { var ww = $(window).width(); //窗口寬度 var wh = $(window).height(); var ol = $(this).offset().left; //距左邊像素 var ot = -20; //$(this).offset().top;//從頭部以上開始 i++; if (i % 22 == 0) num = 1; //22個一排 $(this).css({ "left": (ol + num * 60) + "px", "top": (ot + Math.ceil(i / 2) * 30) + "px" }); //距左距離保持,距上距離變化 num++; }); } //降落 function drop() { $('div', '#container').each(function(i) { var wh = $(window).height(); var ol = $(this).offset().left; var ot = $(this).offset().top; var rnd = Math.round(Math.random() * 100); var rnd2 = Math.round(Math.random() * 50); //i = i == 0 ? 0.5 : i; $(this).css({ "top": (ot + rnd + rnd2) + "px" }); //降落的速度 if (ot >= wh) //如果掉到窗口以下 { //$(this).css({"top":wh-20 +"px"}); //停在當前位置不讓繼續從上往下掉 $(this).css({ "top": -5 * rnd + "px" }); //從頂部以上開始 } }); }
希望本文所述對大家的jQuery程序設計有所幫助。