получить элемент после загрузки страницы - PullRequest
2 голосов
/ 13 февраля 2010

как мне вызвать функцию для подсчета количества делений с идентификатором 'd1' после загрузки страницы. Прямо сейчас у меня есть это в моем разделе, но разве это не выполняет сценарий, прежде чем что-либо в нагрузках? потому что это работает, если я поставлю код ниже тегов div ...

Ответы [ 4 ]

3 голосов
/ 13 февраля 2010

Во-первых, должно быть не более одного, потому что идентификаторы не должны повторяться.

Во-вторых, в обычном Javascript вы можете позвонить getElementById(), чтобы проверить, существует ли он, или getElementsByTagName(), чтобы просмотреть все div и посчитать число, соответствующее вашим критериям. 1009 *

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++;
  }
}

Но я не могу гарантировать правильное поведение этого, потому что, как я сказал, идентификаторы должны быть уникальными, а когда их поведение не определено.

0 голосов
/ 13 февраля 2010

Вам необходимо привязать функцию к событию onload, например:

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

Для записи у вас должен быть только один div с этим идентификатором, так как наличие более одного недопустимо и может вызвать проблемы.

0 голосов
/ 13 февраля 2010

ну ID должен быть уникальным, поэтому ответ должен быть один.

вы можете использовать <body onload='myFunc()'> для вызова скрипта после загрузки DOM.

0 голосов
/ 13 февраля 2010

Используйте jQuery's document.ready () или подключитесь к событию onLoad.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...