在外部js 中使用如下代码获取不到页面上这个控件的id啊,求教怎么获取!
varbox=document.getElementById("box");box.innerHTML="外部js";页面上有个<divid="box"></box>...
var box = document.getElementById("box");
box.innerHTML="外部js";
页面上有个<div id="box"></box> 展开
box.innerHTML="外部js";
页面上有个<div id="box"></box> 展开
3个回答
展开全部
因为你没有用 jquery,(jquery里面有ready()函数,让html加载完了再加载执行js代码),js在运行到的时候就执行了,但是html对象还没有加载出来,所以js会找不到对象,当然就执行失败了。
要注意,浏览器是一个解释器,不是编译器,解释器是按照行,加载一行运行一行,加载一个代码块儿就显示一个代码块儿,或者是一对儿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=utf-8" />
<title>无标题文档</title>
</head>
<body>
<div id="box"></div>
</body>
<script language="javascript" type="text/javascript" src="Untitled-2.js">
</script>
</html>
让js在html对象出来后加载.OK ,运行成功!
要注意,浏览器是一个解释器,不是编译器,解释器是按照行,加载一行运行一行,加载一个代码块儿就显示一个代码块儿,或者是一对儿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=utf-8" />
<title>无标题文档</title>
</head>
<body>
<div id="box"></div>
</body>
<script language="javascript" type="text/javascript" src="Untitled-2.js">
</script>
</html>
让js在html对象出来后加载.OK ,运行成功!
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询