9

我刚刚在 tinyMCE fiddle 中重现了同样的错误。

这是链接: http: //fiddle.tinymce.com/39daab

页面上有简要说明...

按照这些步骤将向您显示我遇到的错误...

我一直在尝试自己解决这个问题,但我认为我做不到。

我浏览了 tinyMCE 文档和错误报告页面一千遍,

但我无法得到这个提示。

IE可以放置焦点,但不能将光标放在输入元素上,这真的很奇怪。

您可以通过选择 $('*:focus')... 来检查当前的焦点元素

聚焦确实有效,但放置光标无效。

4

3 回答 3

4

发布此内容以防万一遇到此问题的其他人有所帮助。我有一个类似的问题。似乎 IE9+ 有一个错误,如果焦点位于已删除的 dom 元素上,则其他元素上的焦点事件将停止工作。

在我的情况下,我可以通过在销毁富文本编辑器(CKEditor)之前执行 $('input').focus() 来解决它。

此处概述了错误: 为什么我有时不能在 IE 中输入我的 <input>?

在这里: http ://bugs.jqueryui.com/ticket/9122

于 2015-03-11T22:55:31.507 回答
0

我用 tinyMce 4.4.0 版本重现了同样的问题。window.focus() 解决了 iE11 中的问题。

function closeTinyMce(){
  tinymce.remove();
  setTimeout(function(){
    window.focus();
  },10)
}

http://fiddle.tinymce.com/DWfaab/1

于 2017-08-01T16:15:44.450 回答
0

另一个类似的问题:在我们的网页上,我们使用快速动画( .slideDown(100) / .slideUp(100) )隐藏和显示 div。div 包含的输入框会随机无法获得 IE9、10 和 11 的焦点。

输入框出现了,但是当你将鼠标悬停在它们上面时光标不会改变,如果你点击输入没有任何反应,就像输入不存在一样。有时,如果您按 Tab 键,它会自行修复,您可以在输入中聚焦并获得光标。

当我们删除动画或增加时间(例如 .slideDown(500) )时,它似乎开始工作 - 我们无法重现该问题。

于 2015-09-03T07:17:24.810 回答