Когда должен Вы использовать document.all
по сравнению с. document.getElementById
?
document.all
является проприетарным расширением Microsoft для стандарта W3C.
getElementById ()
является стандартным - используйте его.
Однако подумайте, пригодится ли использование библиотеки js, такой как jQuery . Например, $ ("# id")
является эквивалентом jQuery для getElementById ()
. Кроме того, вы можете использовать не только селекторы CSS3 .
document.all () - нестандартный способ доступа к элементам DOM. Он устарел в некоторых браузерах. Это дает вам доступ ко всем вложенным элементам в вашем документе.
document.getElementById () является стандартом и полностью поддерживается. Каждый элемент имеет уникальный идентификатор в документе.
Если у вас есть:
<div id="testing"></div>
Использование
document.getElementById("testing");
Будет иметь доступ к этому конкретному div.
document.all
очень старый, вам больше не нужно его использовать .
Цитата Николаса Закаса :
Например, когда DOM была молодой, не все браузеры поддерживали getElementById (), поэтому был { {1}} фрагмент кода, который выглядел следующим образом:
if(document.getElementById){ //DOM
element = document.getElementById(id);
} else if (document.all) { //IE
element = document.all[id];
} else if (document.layers){ //Netscape < 6
element = document.layers[id];
}