单击工具栏按钮时会触发tinyMCE 3.5模糊事件

时间:2013-12-17 14:20:28

标签: javascript internet-explorer-8 tinymce

我一直在尝试使用以下方法捕获一个tinyMCE字段模糊,正如许多SO帖子和tinyMCE网站上提到的那样:

tinyMCE.dom.Event.add(ed.getDoc(), 'blur', onBlur);

但是,我注意到即使用户单击tinyMCE工具栏上的按钮(例如Bold,Italicize,Underline),此事件也会被触发。有什么办法可以防止这种情况发生。我已经尝试了几种不同的解决方案,用于检查被点击的目标元素,但是没有提出在所有浏览器中一致工作的任何内容。

尝试:

function onBlur(e) {
    if($(e.target.activeElement).hasClass('mceIcon')) return;
    // do something
}

function onBlur(e) {
    if($(e.target.activeElement).parents('#' + ed.editorContainer).length > 0) return;
    // do something
}

另外,我注意到这似乎是一个IE8(也可能是其他版本的IE)特定的bug。这是一个显示行为的JSFiddle:http://jsfiddle.net/klinden/8rs4j控制台记录所有被调用的模糊实例。

1 个答案:

答案 0 :(得分:0)

同样在这里,v4.6.1,即使它是在文档中写的"当编辑器模糊时事件被触发但是当焦点移动到任何编辑器UI组件时不会触发。"

我甚至没有运气<div class="radio"> <label> <input type="radio" name="Group" data-val="true" data-val-required="Group must be selected" value="@availableGroup" @defaulted/> @availableGroup </label> </div> 选项

https://www.tinymce.com/docs/advanced/events/#blur