简单研究了没完全解决,相关js混淆了看得眼疼。给您一个思路:在滑动条滚动时候,其实不是简单的让弹幕列表滚动而已,他其实在根据滑块的位置,不断清掉不需要显示的弹幕,又不断插入需要显示的弹幕,也就是弹幕列表内不是全部弹幕都在里面,而是在根据滑块动态调度显示的内容,因此仅仅用scrollTop(300)更改列表滚动条是无效的,要找到滑块拖动时候触发了哪个JS事件才可以。
创新互联专注于企业营销型网站、网站重做改版、东营网站定制设计、自适应品牌网站建设、H5建站、商城网站制作、集团公司官网建设、外贸营销网站建设、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为东营等各大城市提供网站开发制作服务。
如果弹幕是与视频流独立分开的,理论上是可以用JS插件提取的。
在chrome控制台,审查元素中,查看浏览器是怎么得到弹幕的。
一般是xhr请求,例如陌陌直播间的服务器传送给浏览器端,一些JSON文件等,可以用JS插件来读取解析。
这是要自己设置弹幕模式啊。
看见没,在发送弹幕的左边有选项可以选择弹幕模式的,你想要停止不动的就选非滚动的弹幕就可以了。
//设置cookie
function SetCookie(name, value, days) {
days = days || 1;
var times = days * 24 * 60 * 60 * 1000;//换算成毫秒
var exp = new Date();
exp.setTime(exp.getTime() + times );
document.cookie = name + "=" + escape(value) + ";expires=" + exp.toGMTString();
}
//获取cookie
function getCookie(name) {
var arr = document.cookie.match(new RegExp("(^|)" + name + "=([^;]*)(;|$)"));
if (arr != null) arr = unescape(arr[2]);
return arr;
}
当用户设置关闭弹幕的时候调用设置cookie
SetCookie("isBarrageOff","true",1);
然后每次获取弹幕的cookie,判断是否为true即可
var isBarrageOff = getCookie("isBarrageOff");
if (isBarrageOff === "true") {
//不显示弹幕
}