一段简单的javascript为什么运行不出来
发布网友
发布时间:2024-10-24 12:54
我来回答
共4个回答
热心网友
时间:2024-11-01 20:38
<html>
<head>
</head>
<body>
<div id="d">
<script language="javascript">
document.getElementById('d').innerText="13";
</script>
</div>
</body>
把代码放到BODY里就好了
热心网友
时间:2024-11-01 20:42
你的d除非前边定义为对象 并且包含这个 innerText的函数这样才能用
你的d是一个id。。。这个当然不能用
热心网友
时间:2024-11-01 20:39
这里有两个知识点。
第一个知识点是。这里其实是dom操作,
所以要先根据ID取得对象,然后通过对象。属性来动态改变
所以需要用
document.getElementById("id").innerText="13";//也可以用innerHTML
第二个知识是。页面是顺序加载的,所以如果你这段代码放在
<div id="d"></div>之前的话,它是找不到加载的。
所以你可以通过两个方式。
第一种是放在id下面
<div id="d">
</div>
<script language="javascript">
document.getElementById("d").innerText="13";
</script>
还有一种是放在方法里,通过调用。
window.onload=function{ var d=document.getElementById("d"); d.innerText="13"; }
//这个是匿名函数
也可以这样写
<script language="javascript">
function setContent(){
var d=document.getElementById("d");
d.innerText="13";
}
window.onload="setContent()";
</script>
是放在div的下面,不是里面。里面都没加载完呢。怎么能调到对象呢?
热心网友
时间:2024-11-01 20:38
如果你这个javascript在head段 载入要比body里面的文档早 你要操作dom必须把它放到window.onload里面
另外就是你的d必须用getElementById取到div元素才行
这样写 window.onload=function{ var d=document.getElementById("d"); d.innerText="13"; }
那就用innerHTML或者textContent吧 innerText这个不是所有浏览器都有的 最好把script放div外面 这个没必要嵌套到里面去写