mpvue微信小程序开发之实现一个弹幕评论


Posted in Javascript onNovember 24, 2019

先上图

mpvue微信小程序开发之实现一个弹幕评论

就是一个简单的弹幕发送功能

弹幕区的页面:

<div class="content" v-show="doommData.length">
    <div class="textLeft"></div>
    <div class="textItem">
     <p class="text aon" v-if="item.display" v-for="(item,index) in doommData" :key="index" :id="item.id" :style="{'animation-duration':item.time+'s', top:item.top+'%',color:'#333',background:item.result.bgColor}">
      <image :src="item.result.faceImage" class="headImg" />
      <span class="name">{{item.result.name}}:</span>
      <span class="text">{{item.result.sendMessage}}</span>
     </p>
    </div>
   </div>

弹幕区的代码逻辑:

// 弹幕参数
class Doomm {
 constructor(result, top, time, color, id) {
  //内容,顶部距离,运行时间,颜色,id(参数可自定义增加)
  /**
   * result数据结构
   * faceImage:"",
   * bgColor: "#57B2FF",
   * sendMessage: "66666",
   * sendTime: "2019-11-06 15:10:15",
   * name: "eve"
   *
   */
  this.result = result;
  this.top = top;
  this.time = time;
  this.color = color;
  this.display = true;
  this.id = id;
 }
}
//随机字体颜色
getRandomColor() {
 let rgb = [];
 for (let i = 0; i < 3; ++i) {
  let color = Math.floor(Math.random() * 256).toString(16);
  color = color.length == 1 ? "0" + color : color;
  rgb.push(color);
 }
 return "#" + rgb.join("");
}
//节流函数
function throttle(fn, wait) {
 var canUse = true; // 设置一个开关
 return function(item) {
  if (!canUse) {
   return false;
  } // 如果开关已经关掉了就不用往下了
  canUse = false; // 利用闭包刚进来的时候关闭开关
  setTimeout(() => {
   fn(item);
   canUse = true; // 执行完才打开开关
  }, wait);
 };
}
  //添加弹幕列表
  async barrageCyclic() {
   await this.Arr.forEach((ele, i) => {
    //往弹幕列表里面添加数据
    this.doommList.push(
     new Doomm(
      ele,
      Math.ceil(Math.random() * 70 + 10),
      Math.floor(Math.random() * 20 + 10),
      getRandomColor(),
      i
     )
    );
   });
   this.doommData = this.doommList;
  },

总结

以上所述是小编给大家介绍的mpvue微信小程序开发之实现一个弹幕评论,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

Javascript 相关文章推荐
TopList标签和JavaScript结合两例
Aug 12 Javascript
javascript打开新窗口同时关闭旧窗口
Jan 16 Javascript
基于jquery的网站幻灯片切换效果焦点图代码
Sep 15 Javascript
jquery控制表单输入框显示默认值的方法
May 22 Javascript
jQuery移动端日期(datedropper)和时间(timedropper)选择器附源码下载
Apr 19 Javascript
Node.js中防止错误导致的进程阻塞的方法
Aug 11 Javascript
详解如何使用Node.js编写命令工具——以vue-cli为例
Jun 29 Javascript
在Vue中如何使用Cookie操作实例
Jul 27 Javascript
javascript+html5+css3自定义弹出窗口效果
Oct 26 Javascript
浅谈在vue中使用mint-ui swipe遇到的问题
Sep 27 Javascript
vue项目中运用webpack动态配置打包多种环境域名的方法
Jun 24 Javascript
JavaScript实现猜数字游戏
May 20 Javascript
node.js中Buffer缓冲器的原理与使用方法分析
Nov 23 #Javascript
node.js中事件触发器events的使用方法实例分析
Nov 23 #Javascript
javascript 原型与原型链的理解及实例分析
Nov 23 #Javascript
jquery 插件重新绑定的处理方法分析
Nov 23 #jQuery
微信小程序实现录音功能
Nov 22 #Javascript
小程序实现按下录音松开识别语音
Nov 22 #Javascript
小程序采集录音并上传到后台
Nov 22 #Javascript
You might like
《星际争霸II》全新指挥官斯台特曼现已上线
2020/03/08 星际争霸
js实现兼容IE6与IE7的DIV高度
2010/05/13 Javascript
jQuery与ExtJS之选择实例分析
2010/08/19 Javascript
jQuery 操作option的实现代码
2011/03/03 Javascript
jquery事件重复绑定的快速解决方法
2014/01/03 Javascript
jQuery实现当前页面标签高亮显示的方法
2015/03/10 Javascript
JavaScript搜索字符串并将搜索结果返回到字符串的方法
2015/04/06 Javascript
JS学习之表格的排序简单实例
2016/05/16 Javascript
全面解析Bootstrap中scrollspy(滚动监听)的使用方法
2016/06/06 Javascript
JS实现添加,替换,删除节点元素的方法
2016/06/30 Javascript
轻松掌握JavaScript代理模式
2016/08/26 Javascript
EasyUI中的dataGrid的行内编辑
2017/06/22 Javascript
Vue keep-alive实践总结(推荐)
2017/08/31 Javascript
mescroll.js上拉加载下拉刷新组件使用详解
2017/11/13 Javascript
详解React 的几种条件渲染以及选择
2018/10/23 Javascript
了解JavaScript表单操作和表单域
2019/05/27 Javascript
详解vue微信网页授权最终解决方案
2019/06/16 Javascript
vue 解决uglifyjs-webpack-plugin打包出现报错的问题
2020/08/04 Javascript
vuex刷新后数据丢失的解决方法
2020/10/18 Javascript
python实现的解析crontab配置文件代码
2014/06/30 Python
Python set常用操作函数集锦
2017/11/15 Python
python 为什么说eval要慎用
2019/03/26 Python
详解Python下载图片并保存本地的两种方式
2019/05/15 Python
css3一个简易的 LED 数字时钟实现方法
2020/01/15 HTML / CSS
HTML5 localStorage使用总结
2017/02/22 HTML / CSS
《特殊的葬礼》教学反思
2014/04/27 职场文书
贸易经济专业自荐书
2014/06/29 职场文书
求职意向书
2014/07/29 职场文书
工作检讨书怎么写
2014/10/10 职场文书
2014年学生会部门工作总结
2014/11/07 职场文书
表扬稿范文
2015/01/17 职场文书
中班教师个人总结
2015/02/05 职场文书
雨花台导游词
2015/02/06 职场文书
MySQL 数据恢复的多种方法汇总
2021/06/21 MySQL
微信小程序调用python模型
2022/04/21 Python
nginx之内存池的实现
2022/06/28 Servers