简单页面把input 对象focus()就可以了. IE&FF都可以. 但是放到另一个不是测试的页面中就不可以. 也没有提示错误.
有什么其他办法吗?
指定的对象可以是个div. 或input什么的.
7 个解决方案
#1
可能你获取的对象错了,
#2
没有错. document.getElementById("focusInput");
继续找原因吧...
<input id="focusInput" name="textfield" style="width:0px; height:0px; border-width: 0px; " />
继续找原因吧...
<input id="focusInput" name="textfield" style="width:0px; height:0px; border-width: 0px; " />
#3
知道为什么了, 原因是document.getElementById("focusInput"); 这个发生在文档还没有load完成之前,
把这个放到</body>前就可以了.
这个方法不适合我 :(
把这个放到</body>前就可以了.
这个方法不适合我 :(
#4
下面代码是我测试的:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
</head>
<body onload="javascript: document.getElementById('ss').focus();">
<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />
<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />
<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />
<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />
<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />
<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />
<input type="text" id='ss' value="ok" />
<script language="javascript">
// 以下是可以的, body中的onload就不可以. 可是下面代码需要动态加载页面的时候生成, 如何使其能执行?
//document.getElementById('ss').focus();
</script>
</body>
</html>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
</head>
<body onload="javascript: document.getElementById('ss').focus();">
<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />
<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />
<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />
<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />
<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />
<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />
<input type="text" id='ss' value="ok" />
<script language="javascript">
// 以下是可以的, body中的onload就不可以. 可是下面代码需要动态加载页面的时候生成, 如何使其能执行?
//document.getElementById('ss').focus();
</script>
</body>
</html>
#5
.....对象都还没加载你就使用能正确那才见鬼
#6
那有什么办法呢?
#7
<script defer="defer" language="javascript">
用defer属性就可以了.
用defer属性就可以了.
#1
可能你获取的对象错了,
#2
没有错. document.getElementById("focusInput");
继续找原因吧...
<input id="focusInput" name="textfield" style="width:0px; height:0px; border-width: 0px; " />
继续找原因吧...
<input id="focusInput" name="textfield" style="width:0px; height:0px; border-width: 0px; " />
#3
知道为什么了, 原因是document.getElementById("focusInput"); 这个发生在文档还没有load完成之前,
把这个放到</body>前就可以了.
这个方法不适合我 :(
把这个放到</body>前就可以了.
这个方法不适合我 :(
#4
下面代码是我测试的:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
</head>
<body onload="javascript: document.getElementById('ss').focus();">
<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />
<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />
<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />
<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />
<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />
<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />
<input type="text" id='ss' value="ok" />
<script language="javascript">
// 以下是可以的, body中的onload就不可以. 可是下面代码需要动态加载页面的时候生成, 如何使其能执行?
//document.getElementById('ss').focus();
</script>
</body>
</html>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
</head>
<body onload="javascript: document.getElementById('ss').focus();">
<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />
<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />
<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />
<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />
<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />
<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />
<input type="text" id='ss' value="ok" />
<script language="javascript">
// 以下是可以的, body中的onload就不可以. 可是下面代码需要动态加载页面的时候生成, 如何使其能执行?
//document.getElementById('ss').focus();
</script>
</body>
</html>
#5
.....对象都还没加载你就使用能正确那才见鬼
#6
那有什么办法呢?
#7
<script defer="defer" language="javascript">
用defer属性就可以了.
用defer属性就可以了.