【问题标题】:Disable default mouseclick function on TinyMCE禁用 TinyMCE 上的默认鼠标单击功能
【发布时间】:2013-01-27 14:15:03
【问题描述】:

通常当点击 TinyMCE(或任何其他编辑器)中的文本时,插入符号会放置在那里和/或开始文本选择。

我不希望这样的事情发生。我希望当单击可编辑的文本区域时,什么都不应该发生。我该怎么做?

在我的设置函数中,我有这个代码,这是对上一个问题的跟进,它确保一旦打开 TinyMCE,实例中的所有文本都被选中:

    ed.onInit.add(function(ed, evt) {
      var range = ed.selection.dom.createRng();
      range.setStartBefore(ed.getBody().firstChild);
      range.setEndAfter(ed.getBody().lastChild);
      ed.selection.setRng(range);
            });

既然选择了所有文本,我不希望用户能够取消选择它或选择文本中的任何其他范围。所以我希望用户的点击什么都不做。我尝试在相同的设置函数中添加它:

ed.onClick.add(function(ed, evt) {
  console.debug('Editor was clicked: ' + evt.target.nodeName);
  evt.preventDefault();
  evt.stopPropagation();            
        }); 

但是当控制台消息出现时,单击仍然取消选择已选择的文本范围。我怎样才能确保点击什么都不做?或者至少它们不会影响已经选择的文本范围?

【问题讨论】:

  • 尝试否定mousedown事件而不是之后触发的click事件。
  • 就是这样,它成功了! :) 但是我无法选择您的答案,因为您写的是评论,而不是答案。如果你回答问题,我会选择它。

标签: javascript click tinymce preventdefault


【解决方案1】:

尝试否定mousedown 事件而不是之后触发的click 事件。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-01-05
    • 2012-12-08
    相关资源
    最近更新 更多