wangeditor富文本编辑器拓展菜单——橡皮擦

 参考快速扩展一个菜单 · wangEditor 用户文档

继承 按钮 菜单样式自定义拓展 橡皮擦菜单按钮

const _this = this
const { $, BtnMenu } = E
 
// 自定义 清除格式 菜单继F承 BtnMenu class
class Wipe extends BtnMenu {
  constructor(editor) {
    // data-title属性表示当鼠标悬停在该按钮上时提示该按钮的功能简述
    const $elem = E.$(
      `<div class="w-e-menu" data-title="去除所有格式">
        <i class="el-icon-document-remove"></i>
      </div>`
    )
    super($elem, editor)
  }
  // 菜单点击事件
  clickHandler() {
    //获取className为w-e-text的富文本框dom
    function getP(dom) {
      if (!dom) return
      if (dom.className !== 'w-e-text') {
        return getP(dom.parentNode)
      } else {
        return dom
      }
    }
    //清除当前选中元素所有子元素样式
    function cleanAllStyle(dom) {
      if (!dom) return
      const tagNameList = dom.getElementsByTagName('p')
      Array.from(tagNameList).map((node) => {
        node.innerHTML = node.innerText
        node.style = null
      })
    }
    //获取鼠标位置的节点
    let containerEle = getP(
      this.editor.selection.getSelectionContainerElem().elems[0]
    )
    if (containerEle.className === 'w-e-text') {
      cleanAllStyle(containerEle)
    }
  }
  // 菜单是否被激活(如果不需要,这个函数可以空着)
  tryChangeActive() {}
}
 
// 注册菜单
E.registerMenu('Wipe', Wipe)

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值