在聚焦于tinyMCE编辑器之后,IE无法将焦点和光标放在输入文本框上

时间:2013-10-25 05:02:03

标签: javascript jquery internet-explorer tinymce

我刚刚在tinyMCE小提琴中重现了同样的错误。

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

页面上有简短的描述......

按照步骤显示我遇到的错误...

我一直试图通过自己解决这个问题,但我想我无法解决这个问题。

我查看了tinyMCE文档和错误报告页面,如上千次,

但是我无法得到这个暗示。

IE可以放置焦点非常奇怪,但不能将光标放在输入元素上。

您可以通过选择$('*:focus')...

来检查当前的焦点元素

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

3 个答案:

答案 0 :(得分:4)

发布此信息以防其他人遇到此问题。我有一个类似的问题。似乎IE9 +有一个错误,如果焦点在一个被移除的dom元素上,其他元素上的焦点事件就会停止工作。

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

这里概述了Bug: Why can I sometimes not type into my <input> in IE?

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

答案 1 :(得分:0)

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

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

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

答案 2 :(得分:0)

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

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

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