基于JavaScript实现弹幕特效


Posted in Javascript onAugust 27, 2020

本文实例为大家分享了js实现弹幕特效的具体代码,供大家参考,具体内容如下

此处使用HBuilder编译,最简单的弹幕效果,希望各位前辈不吝指教。

注意用的是jquery-2.0.3.js

<!DOCTYPE html> 
<html> 
 <head> 
 <meta charset="utf-8" /> 
 <title></title> 
 </head> 
 
 <style type="text/css"> 
 *{ 
 padding: 0; 
 margin: 0; 
 } 
 .shooter{ 
 width: 600px; 
 height: 60px; 
 /*background: black;*/ 
 margin: 0 auto; 
 } 
 .shooter input{ 
 width: 300px; 
 height: 40px; 
 border: none; 
 border-radius: 7px; 
 box-shadow: 0 0 8px rgba(182,195,214,0.6)inset; 
 padding-left: 15px; 
 margin-top: 10px; 
 } 
 .shooter button{ 
 width: 80px; 
 height: 40px; 
 border: none; 
 margin-left: 10px; 
 background-color:#339B53; 
 border-radius:8px; 
 color: white; 
 cursor: pointer; 
 } 
 
 .shooter button:hover{ 
 font-size: 14px; 
 background:#008000; 
 } 
 .content{ 
 width: 100%; 
 height: 600px; 
 background: gray; 
 position: relative; 
 overflow: hidden; 
 } 
 
 .bullet{ 
 position: absolute; 
 /*right: 0;*/ 
 /*left:1600px;*/ 
 word-break: keep-all; 
 /*不让单词折行*/ 
 
 
 } 
 
 </style> 
 
 <body> 
 <div class="shooter"> 
 
 <input type="text"/> 
 <button>发射</button> 
 
 </div> 
 <div class="content"> 
 
 </div> 
 <script type="text/javascript" src="js/jquery-2.0.3.js" ></script> 
 
 <script type="text/javascript"> 
 $("button").click(function(){ 
  
 var msg = $("input").val(); 
 //取出输入框内容 
  
 if(msg.length > 15){ 
  
  alert("字数不得超过15个!"); 
  return; 
 } 
  
 var bullet = $("<div>"); 
 //生成一条弹幕 
 bullet.text(msg); 
 //将输入框内容放置到div中 
 bullet.addClass("bullet"); 
 //为bullet这个div添加样式bullet 
 bullet.css("top",Math.round(Math.random()*500)); 
 //随机设置弹幕位置 
 bullet.css("left","1600px"); 
 bullet.css("font-size",Math.round(Math.random()*60)+12+"px"); 
 bullet.css("color","rgb("+Math.round(Math.random()*255)+","+Math.round(Math.random()*255)+","+Math.round(Math.random()*255)+")"); 
// alert(window.getComputedStyle(bullet,null).width); 
 bullet.animate({ 
  left:-1000//此处视为bug,应该随着弹幕的长短而变化 
 },Math.round(Math.random()*9000)+1000,"linear", function(){ 
  bullet.remove(); 
  //当运动结束时,删除弹幕 
 }); 
  
 $(".content").append(bullet); 
 //将弹幕添加到屏幕中 
  
  
 }); 
 </script> 
 </body> 
</html>

下面是展示的弹幕效果(显示的白线在谷歌浏览器中是看不出来的,在录制时会看出来,此处又一bug):

基于JavaScript实现弹幕特效

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
setTimeout与setInterval在不同浏览器下的差异
Jan 24 Javascript
JQUERY1.6 使用方法四 检测浏览器
Nov 23 Javascript
点击按钮自动加关注的代码(sina微博/QQ空间/人人网/腾讯微博)
Jan 02 Javascript
比较不错的JS/JQuery显示或隐藏文本的方法
Feb 13 Javascript
Atitit.js的键盘按键事件捆绑and事件调度
Apr 01 Javascript
Bootstrap 布局组件(全)
Jul 18 Javascript
js对象浅拷贝和深拷贝详解
Sep 05 Javascript
js将table的每个td的内容自动赋值给其title属性的方法
Oct 13 Javascript
WebView启动支付宝客户端支付失败的问题小结
Jan 11 Javascript
一秒学会微信小程序制作table表格
Feb 14 Javascript
angula中使用iframe点击后不执行变更检测的问题
May 10 Javascript
Vue利用localStorage本地缓存使页面刷新验证码不清零功能的实现
Sep 04 Javascript
js实现水平滚动菜单导航
Jul 21 #Javascript
修改 bootstrap table 默认detailRow样式的实例代码
Jul 21 #Javascript
JavaScript实现购物车基本功能
Jul 21 #Javascript
解决html input验证只能输入数字,不能输入其他的问题
Jul 21 #Javascript
js案例之鼠标跟随jquery版(实例讲解)
Jul 21 #jQuery
基于input框覆盖掉数字英文的实例讲解
Jul 21 #Javascript
浅谈通过JS拦截 pushState和replaceState事件
Jul 21 #Javascript
You might like
用PHP函数解决SQL injection
2006/12/09 PHP
php array_intersect()函数使用代码
2009/01/14 PHP
PHP base64编码后解码乱码的解决办法
2014/06/19 PHP
PHP时间类完整实例(非常实用)
2015/12/25 PHP
学习PHP的数组总结【经验】
2016/05/05 PHP
SCP远程VPS快速搬家和WDCP升级php5.3安装memcached和eaccelerator教程
2017/07/27 PHP
JavaScript使用IEEE 标准进行二进制浮点运算产生莫名错误的解决方法
2011/05/28 Javascript
Extjs gridpanel 出现横向滚动条问题的解决方法
2011/07/04 Javascript
jQuery点击弹出下拉菜单的小例子
2013/08/01 Javascript
判断输入是否为空,获得输入类型的JS代码
2013/10/30 Javascript
JS实现自动变换的菜单效果代码
2015/09/09 Javascript
详解jQuery中的deferred对象的使用(一)
2016/05/27 Javascript
基于BootStrap栅格栏系统完成网站底部版权信息区
2016/12/23 Javascript
JS获得多个同name 的input输入框的值的实现方法
2017/01/09 Javascript
angular学习之从零搭建一个angular4.0项目
2017/07/10 Javascript
Vue.use源码学习小结
2018/06/20 Javascript
vue根据值给予不同class的实例
2018/09/29 Javascript
vue使用nprogress加载路由进度条的方法
2020/06/04 Javascript
使用python在校内发人人网状态(人人网看状态)
2014/02/19 Python
使用Python3编写抓取网页和只抓网页图片的脚本
2015/08/20 Python
解决Python print 输出文本显示 gbk 编码错误问题
2018/07/13 Python
详解Python利用random生成一个列表内的随机数
2019/08/21 Python
pandas条件组合筛选和按范围筛选的示例代码
2019/08/26 Python
python opencv 图像边框(填充)添加及图像混合的实现方法(末尾实现类似幻灯片渐变的效果)
2020/03/09 Python
Python如何在循环内使用list.remove()
2020/06/01 Python
python设置表格边框的具体方法
2020/07/17 Python
Python HTMLTestRunner如何下载生成报告
2020/09/04 Python
Manuka Doctor英国官网:真正的麦卢卡蜂蜜和护肤品
2018/10/26 全球购物
C++面试题目
2013/06/25 面试题
生物技术专业研究生自荐信
2013/09/22 职场文书
大气污染防治方案
2014/05/19 职场文书
2015年端午节活动方案
2015/05/05 职场文书
会议承办单位欢迎词
2015/09/30 职场文书
学会掌握自己命运的十条黄金法则:
2019/08/08 职场文书
Java 泛型详解(超详细的java泛型方法解析)
2021/07/02 Java/Android
错误码NET::ERR_CERT_DATE_INVALID证书已过期解决方法?
2022/07/07 数码科技