我正在制作一个编辑器,它在某些文本选择上显示工具栏。我在 IE 中遇到的问题是闪烁的光标仍然显示在工具栏上方。 这种情况尤其发生在 IE 中。闪烁的光标出现在顶部。
以下是此问题的示例:
$('.content').mouseup(function(e) {
$('.shy').css({
top: e.pageY - 30 + 'px',
left: e.pageX - 30 + 'px'
});
$('.shy').show();
});
.content {
height: 300px;
width: 300px;
border: 1px solid black;
overflow: hidden;
word-wrap: break-word;
z-index: 1;
}
.shy {
height: 100px;
width: 100px;
background-color: orange;
z-index: 2;
overflow: hidden;
word-wrap: break-word;
display: none;
position: absolute;
}
<script src="http://code.jquery.com/jquery-1.8.3.js"></script>
<div contenteditable="true" class='content'>Content Content Content Content Content Content Content Content Content Content Content Content Content Content Content Content Content Content Content Content Content Content Content Content Content Content Content Content Content Content Content Content</div>
<div class='shy'>
<div>
取消焦点不是一个选项,因为此应用程序中有更多组件,并且此修复程序不适用于这些情况。修复需要完全自主。
最佳答案
只需添加
$('.shy').focus();
并且光标在 IE7-IE10 上将停止闪烁(已测试)
UDP1 抱歉,没有看到您关于“焦点”不是一个选项的更新...
关于jquery - IE8、IE9、IE10 光标闪烁问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13760093/