基于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 相关文章推荐
让 JavaScript 轻松支持函数重载 (Part 2 - 实现)
Aug 04 Javascript
javascript Firefox与IE 替换节点的方法
Feb 24 Javascript
百度地图api应用标注地理位置信息(js版)
Feb 01 Javascript
Javascript delete 引用类型对象
Nov 01 Javascript
js实现星星打分效果的方法
Jul 05 Javascript
Angularjs分页查询的实现
Feb 24 Javascript
javascript数组去重常用方法实例分析
Apr 11 Javascript
Angular4 中常用的指令入门总结
Jun 12 Javascript
Bootstrap Multiselect 常用组件实现代码
Jul 09 Javascript
使用Vue构建可重用的分页组件
Mar 26 Javascript
vue中使用axios post上传头像/图片并实时显示到页面的方法
Sep 27 Javascript
详解如何创建并发布一个 vue 组件
Nov 08 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 文件上传系统手记
2009/10/26 PHP
修改php.ini以达到屏蔽错误信息并记录日志
2013/06/16 PHP
PHP+Ajax检测用户名或邮件注册时是否已经存在实例教程
2014/08/23 PHP
Laravel框架实现多数据库连接操作详解
2019/07/12 PHP
JavaScript For Beginners(转载)
2007/01/05 Javascript
跨浏览器的事件对象介绍
2012/06/27 Javascript
解决JQeury显示内容没有边距内容紧挨着浏览器边线
2013/12/20 Javascript
如何动态的导入js文件具体该怎么实现
2014/01/14 Javascript
jQuery获取DOM节点实例分析(2种方式)
2015/12/15 Javascript
jQuery验证插件validate使用详解
2016/05/11 Javascript
简单理解vue中Props属性
2016/10/27 Javascript
jQuery.Validate表单验证插件的使用示例详解
2017/01/04 Javascript
Ionic+AngularJS实现登录和注册带验证功能
2017/02/09 Javascript
详解基于 Nuxt 的 Vue.js 服务端渲染实践
2017/10/24 Javascript
Angular实现的内置过滤器orderBy排序与模糊查询功能示例
2017/12/29 Javascript
基于JavaScript实现抽奖系统
2018/01/16 Javascript
Vue中render函数的使用方法
2018/01/31 Javascript
p5.js入门教程之鼠标交互的示例
2018/03/16 Javascript
实例详解vue.js浅度监听和深度监听及watch用法
2018/08/16 Javascript
json解析大全 双引号、键值对不在一起的情况
2019/12/06 Javascript
JavaScript进制转换实现方法解析
2020/01/18 Javascript
Vue.extend 登录注册模态框的实现
2020/12/29 Vue.js
python编程实现希尔排序
2017/04/13 Python
Linux-ubuntu16.04 Python3.5配置OpenCV3.2的方法
2018/04/02 Python
在Python中获取两数相除的商和余数方法
2018/11/10 Python
python3.6数独问题的解决
2019/01/21 Python
python字典的setdefault的巧妙用法
2019/08/07 Python
Django框架之中间件MiddleWare的实现
2019/12/30 Python
美国环保婴儿用品公司:The Honest Company
2017/11/23 全球购物
毕业生毕业总结的自我评价范文
2013/11/02 职场文书
小学生优秀评语大全
2014/04/22 职场文书
2016年六一文艺汇演开幕词
2016/03/04 职场文书
三十年再续同学情倡议书
2019/11/27 职场文书
利用前端HTML+CSS+JS开发简单的TODOLIST功能(记事本)
2021/04/13 Javascript
Mysql Online DDL的使用详解
2021/05/20 MySQL
vue2的 router在使用过程中遇到的一些问题
2022/04/13 Vue.js