美文网首页
学习记录:基于jQuery的简单弹幕墙

学习记录:基于jQuery的简单弹幕墙

作者: 银票大王 | 来源:发表于2017-03-21 22:41 被阅读0次

一个非常简单的弹幕墙,仅实现了弹幕显示,没有数据存储和后续播放。
实现原理是从输入框获得弹幕内容,经过修饰包装后以添加DOM的方式动态显示在弹幕区内。

弹幕显示的高度为显示区内的随机数,减去20是为了不会顶着顶部,如果考虑到不压着底下字幕,还需要加上适当的像素。

var spanH = Math.floor((Math.random())*(danmuH-20));

弹幕的移动动画效果

var spanstring = $("#content_display>span:last-child");
 //获取刚添加进DOM里面的弹幕,这个选择器的意思为选择#display元素下面的最后一个直接子元素span。
 spanstring.stop().animate({"left":danmuW},10000,"linear",function(){
      $(this).remove();
      });
//动画,注意到开始前先设置了一个停止方法然后才开始运行动画,并且运行完后调用一个回调函数将此对象移除。里面的参数{"left":danmuW}指的是动画末位置。

颜色设置实现为先自定义了7个颜色,然后弹幕生成时随机选择一个添加进样式,为什么不直接用所有颜色呢,主要是考虑到美观问题,随机生成所有颜色的话,白色,浅色等会难以识别。

var colorArr=["#cfaf12","#12af01","#981234","#adefsa","#db6be4","#f5264c","#d34a74"]; 
var colorra = Math.floor(Math.random()*7);
danmuspan.css({"top":spanH,"left":0,"font-size":20,"font-family":"Helvetica","color":colorArr[colorra]});

这个小项目是在freecodecamp上javascript的入门练习,虽然很简单,但是一开始完全摸不着头绪,搜索了好几种实现方法,最终才写出来,跟成熟的方案比删减了很多功能,比如定时循环播放,后台数据存储等,希望以后技术精进后可以再写一个更完善的出来。

相关文章

  • 学习记录:基于jQuery的简单弹幕墙

    一个非常简单的弹幕墙,仅实现了弹幕显示,没有数据存储和后续播放。实现原理是从输入框获得弹幕内容,经过修饰包装后以添...

  • jQuery 选择器

    主要记录在菜鸟上学习的内容:平时可能会用到但是不太熟悉的内容——做记录之用。jQuery 选择器基于元素的 id、...

  • JQuery基本操作

    (1)jQuery加载 jQuery加载 // alert();//弹...

  • JQuery基本操作

    (1)jQuery加载 jQuery加载 // alert();//弹...

  • JS组件

    jquery.ripples 介绍jquery.ripples一个简单的基于WebGL的涟漪效应。背景图像通常很无...

  • jquery写一个简单的弹幕墙

    思路 1.页面一个弹幕墙容器接收弹幕一个文本框输入弹幕一个发送按钮 一个清屏按钮 2.写jquery插件,提供以下...

  • bootstrap table 基本使用

    前言 bootstrap tabel是基于 Bootstrap 的 jQuery 表格插件,通过简单的设置,就可以...

  • JQuery UI

    jQuery UI: 基于jquery编写的一套UI组件库,专用于PC端浏览器。jQuery Mobile: 基于...

  • jQuery学习记录

    jQuery的引入 一.jQuery 语法实例 $(this).hide() 演示 jQuery hide() 函...

  • JS 生成下载文件

    基于Jquery

网友评论

      本文标题:学习记录:基于jQuery的简单弹幕墙

      本文链接:https://www.haomeiwen.com/subject/pkqnnttx.html