如何让光标隐藏在IE中的绝对div下面?

时间:2011-09-15 10:36:16

标签: html css internet-explorer

在IE 8中查看this page

专注于输入框。闪烁的光标出现在蓝色div的顶部。在Chrome和Firefox中,这不会发生。

这是一个浏览器错误吗?有解决方法吗?

1 个答案:

答案 0 :(得分:1)

这确实是IE的问题。

也许你可以尝试使用span元素或其他东西作为输入字段。然后,您可以设置一个事件处理程序来监听按下的键。

例如,以下JavaScript代码段允许将字符插入元素的innerHTML中:

function addChar(element, event) {
    if (!event) event = window.event;
    element.innerHTML += String.fromCharCode(event.keyCode);
}

...和HTML代码段:

<span onkeypress="addChar(this, event);"></span>

请注意,在按BACKSPACE时,您仍需要一种解决方法来阻止浏览器导航到之前访问过的网页。

例如,可以使用event.preventDefault()来完成。或者你可以使用

<body onkeydown="if(event.keyCode==8||event.keyCode==13)return false;">

或其他什么。

http://www.mcemperor.nl/test/hidecaret/上,您可以看到一个示例。