我如何调用一个函数来计算页面加载后 id 为 'd1' 的 div 的数量。现在我在我的部分有它,但在加载任何内容之前不执行脚本吗?因为如果我将代码放在 div 标签下面,它就可以工作......
问问题
8003 次
4 回答
3
首先应该最多有一个,因为 ID 并不意味着重复。
其次,在直接的 Javascript 中,您可以调用getElementById()
以验证它是否存在或getElementsByTagName()
遍历所有 div 并计算符合您条件的数字。
var elem = document.getElementById("d1");
if (elem) {
// it exists
}
或者
var divs = document.getElementsByTagName("div");
var count = 0;
for (var i = 0; i < divs.length; i++) {
var div = divs[i];
if (div.id == "d1") {
count++;
}
}
但我不能保证这样做的正确行为,因为就像我说的那样,ID 是唯一的,当它们不是时,行为是未定义的。
于 2010-02-13T00:49:39.397 回答
0
使用jQuery 的 document.ready()或连接到 onLoad 事件。
于 2010-02-13T00:50:58.120 回答
0
一个 ID 应该是唯一的,所以答案应该是一个。
加载 DOM 后,您可以使用它<body onload='myFunc()'>
来调用脚本。
于 2010-02-13T00:51:43.137 回答
0
您需要将函数绑定到onload
事件,如下所示:
window.onload = function() {
var divElements = document.getElementById("d1");
var divCount = divElements.length;
alert(divCount);
};
作为记录,您应该只拥有一个具有该 ID 的 div,因为拥有多个是无效的并且可能会导致问题。
于 2010-02-13T00:54:44.567 回答