Focus适用于除IE6以外的所有浏览器?

时间:2010-11-04 21:07:32

标签: javascript internet-explorer focus internet-explorer-6

嘿,只是一个简单的问题,我在元素上使用焦点功能,它似乎工作正常,因为它在IE7,IE8和所有好的浏览器中工作。当我在IE6中尝试它时......没有。这是一条非常基本的路线。

element.focus();

非常基本。那么IE6有这个功能的错误或问题吗?我知道元素对象存在,我已经测试了所有这些并且它适用于所有其他浏览器。

感谢您提供任何帮助。

2 个答案:

答案 0 :(得分:1)

这个问题已经很老了,但最近我发生了同样的事情。

这适合我。

setTimeout(function() {
    element.focus();
}, 10);

希望对那些不得不忍受ie6的人有所帮助:

答案 1 :(得分:0)

您是否动态创建<input>元素? Stackoverflow可能已经有了答案。

更新

使用IE6运行Windows XP SP3,我无法使用以下文件复制您描述的问题:

<html>
<head>
<script type="text/javascript">
function body_load() {
  document.getElementById("field2").focus(); }
</script>
</head>
<body onload="body_load();">
<input type="text" id="field1"/>
<input type="text" id="field2"/>
</body>
</html>

它总是按预期关注field2。以下文件也按预期工作:

<html>
<body>
<input type="text" id="field1"/>
<input type="text" id="field2"/>
<script type="text/javascript">
  document.getElementById("field2").focus();
</script>
</body>
</html>

您使用application/javascript作为type的{​​{1}}吗?我知道IE6有问题。也许发布一个可以复制问题的例子将有助于确定它无法正常工作的原因。