页面加载后获取元素

时间:2010-02-13 00:46:44

标签: javascript function call

如何在页面加载后调用函数来计算id为“d1”的div数。现在我在我的部分中有它但是在负载中的任何东西之前没有执行脚本?因为如果我把代码放在div标签下面就可以了......

4 个答案:

答案 0 :(得分: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是唯一的,当它们不是行为时,ID是未定义的。

答案 1 :(得分:0)

使用jQuery's document.ready()或连接onLoad事件。

答案 2 :(得分:0)

一个ID应该是唯一的,所以答案应该是一个。

一旦加载了DOM,您就可以使用<body onload='myFunc()'>来调用脚本。

答案 3 :(得分:0)

你需要将函数绑定到onload事件,如下所示:

window.onload = function() {
    var divElements = document.getElementById("d1");
    var divCount = divElements.length;
    alert(divCount);
};

对于记录,您应该只有一个具有该ID的div,因为多个ID无效并且可能会导致问题。