我遇到了一个非常有趣的问题。
我正在尝试使用window.onLoad
使用javascript(没有jquery,我尝试过但不能使用)在输入字段上设置焦点。
看看这个fiddel:setFocusOnLoad
它在Chrome浏览器中工作正常,但在Firefox中却没有。在Firefox中有任何问题。我怎么解决。感谢。
Editted: 这是我在html文件中复制的代码。
<!DOCTYPE html>
<html>
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<script type="text/javascript">
function onloadFocus(){
var name = document.getElementById('name');
// name.value='window.onload called';
name.focus();
}
window.onload=onloadFocus();
</script>
</head>
<body>
<div><input type='text' value='' id='name' name='name'></div>
</body>
</html>
答案 0 :(得分:0)
你必须将函数调用包装成一个函数,否则会立即调用它,而不是onLoad(此时输入仍然是未知的):
window.onload=function(){onloadFocus();}
答案 1 :(得分:0)
您应该使用window.onload=onloadFocus;
代替window.onload=onloadFocus();
,因为如果window.onload=onloadFocus();
onloadFocus将立即运行,那时输入字段可能无法使用。
答案 2 :(得分:0)
我找到了解决方案。如果您想专注于Firefox。在script标签的开始处编写focus函数。
<script type="text/javascript">
document.getElementById('name').focus();
// rest of the code here.
</script>
希望这会对您有所帮助。