barrage

功能描述

弹幕的制作,开发者可以自定义样式

依赖模块

快速使用

JS调用

  1. 初始化使用init()方法;
  2. 获取发射弹幕的通道getChannel()方法,没有就返回-1
  3. 根据DOM和弹幕信息 发射弹幕shootDanmu(dom, text, channel);
  4. function init() {
  5. let wrapper = document.getElementById('wrapper')
  6. for (let j = 0; j < CHANNEL_COUNT; j++) {
  7. let doms = [];
  8. for (let i = 0; i < MAX_DM_COUNT; i++) {
  9. let dom = document.createElement('span');
  10. wrapper.appendChild(dom);
  11. dom.className = 'right';
  12. dom.style.top = j * 20 + 'px';
  13. doms.push(dom);
  14. dom.addEventListener('transitionend', () => {
  15. dom.className = 'right';
  16. dom.style.transform = null;
  17. domPool[j].push(dom);
  18. });
  19. }
  20. domPool.push(doms);
  21. }
  22. for (let i = 0; i < CHANNEL_COUNT; i++) {
  23. hasPosition[i] = true;
  24. }
  25. }

特别说明

样式修改及用例详见 rotarydraw.html。