jQuery實現(xiàn)的頁面彈幕效果【測試可用】
本文實例講述了jQuery實現(xiàn)的頁面彈幕效果。分享給大家供大家參考,具體如下:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>juqery彈幕</title> <style> *{ margin: 0px; padding: 0px; } html,body{ width: 100%; height: 100%; font-family: "微軟雅黑"; background-color: #ccc; margin: 0; padding: 0; } .boxDom{ width: 100%; height: 800px; position: relative; overflow: hidden; } .boxDom img{ width: 100%; height: 100%; } .idDom{ width: 100%; height: 50px; background-color: #666; position: fixed; bottom: 0px; } .content{ width: 600px; height: 50px; position: absolute; left: 500px; top:10px; } .title{ font-size: 25px; display: inline; vertical-align: bottom; color: #fff; } .text{ width: 300px; height: 30px; border:none; border-radius: 5px; text-indent: 2em; margin-left: 60px; } .btn{ width: 100px; height: 30px; margin-left: 20px; font-size: 20px; font-weight: 700; color: #fff; background-color: red; border:none; border-radius: 5px; cursor: pointer; } .string { width: 300px; height: 40px; margin-top: 20px; position: absolute; color: #000; font-size: 20px; font-family: "微軟雅黑"; } </style> </head> <body> <div class="boxDom" id="boxDom"> <!-- <img src="7.jpg" alt=""> --> <div class="idDom"> <div class="content"> <p class="title">發(fā)送彈幕:</p> <input type="text" class="text"> <button class="btn" id="btn" type="button">發(fā)送</button> </div> </div> </div> <script src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script> <script> $(function () { var boxDom = $("#boxDom"); var top, right; var pageWidth = parseInt($(document).width()); var pageHeight = parseInt($(document).height()); $("#btn").bind("click", auto); //綁定回車鍵按鈕 document.onkeydown = function(event){ if(event.keyCode == 13){ auto(); } } function auto() { //獲取輸入的字符串 var str = $(".text").val(); //生成一個元素 var createSpan = $("<span class ='string'></span>"); //給元素賦值 createSpan.text(str); //為了頁面友好,清空剛輸入的內(nèi)容 $(".text").val(""); //生成元素一個隨機的位置 為了使每一條彈幕都出現(xiàn)不同的位置 top = Math.floor(Math.random()*pageHeight); createSpan.css({ "top": top, "right": -400, "color": getRandomColor() }); boxDom.append(createSpan); //元素在dom運動起來 //首先有一個span,只讓最后一個動起來 var spandom = $("#boxDom>span:last-child");//找到最后一個span spandom.animate({"right":pageWidth+300},10000,function(){ $(this).remove(); }); } //定義一個可以生成隨機顏色的方法 function getRandomColor(){ var colorArr = ['1','2','3','4','5','6','7','8','9','A','B','C','D','E','F']; var color = ""; for(var i=0;i<6;i++){ color += colorArr[Math.floor(Math.random()*16)]; } return "#"+color; } }) $(function () { var boxDom = $("#boxDom"); var top, right; var pageWidth = parseInt($(document).width()); var pageHeight = parseInt($(document).height()); $("#btn").bind("click", auto); //綁定回車鍵按鈕 document.onkeydown = function(event){ if(event.keyCode == 13){ auto(); } } function auto() { //獲取輸入的字符串 var str = $(".text").val(); //生成一個元素 var createSpan = $("<span class ='string'></span>"); //給元素賦值 createSpan.text(str); //為了頁面友好,清空剛輸入的內(nèi)容 $(".text").val(""); //生成元素一個隨機的位置 為了使每一條彈幕都出現(xiàn)不同的位置 top = Math.floor(Math.random()*pageHeight); createSpan.css({ "top": top, "right": -400, "color": getRandomColor() }); boxDom.append(createSpan); //元素在dom運動起來 //首先有一個span,只讓最后一個動起來 var spandom = $("#boxDom>span:last-child");//找到最后一個span spandom.animate({"right":pageWidth+300},10000,function(){ $(this).remove(); }); } //定義一個可以生成隨機顏色的方法 function getRandomColor(){ var colorArr = ['1','2','3','4','5','6','7','8','9','A','B','C','D','E','F']; var color = ""; for(var i=0;i<6;i++){ color += colorArr[Math.floor(Math.random()*16)]; } return "#"+color; } }) </script> </body> </html>
運行效果如下圖所示:
感興趣的朋友還可以使用在線HTML/CSS/JavaScript代碼運行工具:http://tools.jb51.net/code/HtmlJsRun,測試一下運行效果。
更多關于jQuery相關內(nèi)容感興趣的讀者可查看本站專題:《jQuery切換特效與技巧總結》、《jQuery拖拽特效與技巧總結》、《jQuery擴展技巧總結》、《jQuery常見經(jīng)典特效匯總》、《jQuery動畫與特效用法總結》、《jquery選擇器用法總結》及《jQuery常用插件及用法總結》
希望本文所述對大家jQuery程序設計有所幫助。
相關文章
jQuery LigerUI 插件介紹及使用之ligerDrag和ligerResizable示例代碼打包
jQuery LigerUI 插件介紹及使用之ligerDrag和ligerResizable使用。2011-04-04Jquery實現(xiàn)select multiple左右添加和刪除功能的簡單實例
下面小編就為大家?guī)硪黄狫query實現(xiàn)select multiple左右添加和刪除功能的簡單實例。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2016-05-05jQuery將所有被選中的checkbox某個屬性值連接成字符串的方法
這篇文章主要介紹了jQuery將所有被選中的checkbox某個屬性值連接成字符串的方法,可實現(xiàn)將選中屬性值連接成字符串的功能,具有一定參考借鑒價值,需要的朋友可以參考下2015-01-01jQuery修改DOM結構_動力節(jié)點Java學院整理
這篇文章主要介紹了jQuery修改DOM結構的相關知識,需要的的朋友參考下吧2017-07-07jQuery的Ajax時無響應數(shù)據(jù)的解決方法
今天做項目時發(fā)現(xiàn)永遠響應的值都是該頁面的html代碼。2010-05-05jQuery中將json數(shù)據(jù)顯示到頁面表格的方法
今天小編就為大家分享一篇jQuery中將json數(shù)據(jù)顯示到頁面表格的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-05-05