繁体   English   中英

防止Wordpress TinyMCE删除退格上的div

[英]Prevent Wordpress TinyMCE from deleting div on backspace

我正在写一个小插件,在tinymce中添加网格行和列。 它或多或少正确地工作,但是TinyMCE坚持在div为空时删除它。 我希望仅通过按钮控件删除我的列和行。

我在SO上发现了另一个问题,提出了这个问题,并且给出的答案似乎正确,但是效果不佳。

editor.on("keydown",function(e) {
  if (e.keyCode == 8 || e.keyCode == 46) {

    try {
      var elem = editor.selection.getNode();

      if (elem.classList.contains("columns") || elem.classList.contains("column") || elem.classList.contains("row")) {
        console.log(elem.textContent.length);
        if (elem.textContent.length == 0) {
          console.log('no content');
          e.preventDefault();
          return false;
        }
      }
    } catch (e) {}
  }
});

没用 如果我将elem.textContent.length更改为==1。它确实防止删除最后一个字符,但是如果我将其保留为0,它将删除列/行,甚至不会到达console.log。

答案似乎非常非常接近,但遥不可及。

任何有关如何补救的想法将不胜感激。

经过反复摆弄之后,我通过调整上面的代码设法使其正常工作。

if (elem.textContent.length <= 1) {
    e.preventDefault();
    jQuery(elem).html('');
}

我认为问题在于将textContent.length设置为0为时已晚,因此我需要找到一种以1个字符为目标的删除/退格的方法。 因此,我实质上是通过添加空内容来防止通常的删除和模拟删除。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM