- 清除所有或者某一条弹幕的方法
clear() - 清除部分弹幕的方法
clearSome() - 清除指定样式弹幕的方法
clearStyled()
danmaku.clear(danmakuId = null)danmakuId弹幕(在当前容器内)的唯一ID(不是弹幕DOM元素的id哦!)
-
默认值:
null(不指定弹幕)
本参数取值是一个整数,是某一条弹幕的唯一id。
当指定了danmakuId时,程序会清除容器中指定(ID对应)的弹幕;
当不指定的时候,程序会清除容器中所有弹幕。
强烈建议围观Demo,一目了然。
danmaku.clearSome(type = '', reversed = 'all')-
type- 弹幕类型 -
reversed- (仅针对滚动弹幕)清除的是否是反向的弹幕
- 默认值:
''(不指定弹幕类型)
当不指定type参数时,程序会清除容器中所有弹幕。
| 可选值 | 说明 |
|---|---|
'random', 'scroll', 'top', 'bottom', 'midscroll', 'midhang' |
danmaku.attrs()支持设置的弹幕类型 |
'all' |
代表所有的弹幕 |
'scrolling' |
代表所有滚动弹幕 (包括random, scroll, midscroll) |
'hanging' |
代表所有悬停弹幕 (包括top, bottom, midhang) |
'freeing'/'free' |
代表所有自由弹幕 |
- 默认值:
'all'(无论正向还是反向滚动)
本选项只有在type参数取值为scroll, midscroll, random, scrolling, all时有效(也就是仅对滚动弹幕有效)。
| 可选值 | 说明 |
|---|---|
true |
在type对应的滚动弹幕中,清除逆向滚动的弹幕 |
false |
在type对应的滚动弹幕中,清除正向滚动的弹幕 |
'all' |
在type对应的滚动弹幕中,清除所有滚动弹幕 |
当type参数取值为all时,就算传入了reversed参数,悬停弹幕也是会被全部清除的:
// 这样会清除 所有的逆向滚动弹幕 和 所有的悬停弹幕
danmaku.clearSome('all', true);要想只清除逆向滚动弹幕而不清除悬停弹幕,可以这样写:
danmaku.clearSome('scrolling', true);⚠ 注意,该方法可能不太稳定。之所以不稳定,是因为每次清除时传入的样式要保证和目标弹幕的样式完全一致。
Demo:清除指定样式的弹幕
danmaku.clearStyled(styles)styles- 包含CSS样式键值对的对象
- 无默认值,必须传入
取值为一个对象,这个对象包含了一些CSS样式键值对。
举个栗子,清除所有颜色为蓝色的弹幕:
danmaku.clearStyled({
'color': 'blue'
});实际上这里的CSS样式值还是支持逻辑取反操作的,只需要在值前面加上!即可。
比如,清除所有颜色不为白色的弹幕:
danmaku.clearStyled({
'color': '!white' // 默认情况下弹幕样式的color值为'white'
});