2013-04-06 9 views
7

Przechodzę przez jakiś (stary?) Natywny javascript i natknąłem się na separację document.getElementById, document.all i document.layers.to dokument.all i document.layers przestarzały teraz

Z tego, co wiem, document.all i document.layers są teraz przestarzałe, ale chciałem się tylko upewnić.

+1

@Royi Namir: najnowsze wersje chrome i operze również wspierać 'document.all' –

+0

@ Dr.Molle au .... nie wiedział, że dzięki :-).. (usuwanie) –

Odpowiedz

10

Tak, są przestarzałe.

Kolekcja document.all jest specyficzna dla przeglądarki Internet Explorer. Kolekcja document.layers była charakterystyczna dla Netscape. Ani nie jest w standardach.

Zamiast tego używamy teraz document.getElementById.

Zobacz także: https://developer.mozilla.org/en-US/docs/Mozilla_Web_Developer_FAQ#JavaScript_doesn.E2.80.99t_work.21_Why.3F

+0

Dokumentacja [W3Schools] (http://www.w3schools.com/jsref/dom_obj_document.asp) również to potwierdza. Ponieważ żadna właściwość nie jest wymieniona. – fredrik

+0

@fredrik: Dzięki za to, ale zauważ, że w3schools nie jest wystarczająco kompletny, aby można go było wykorzystać jako dokumentację. Możesz użyć go jako samouczka, o ile uznasz, że niektóre jego części mogą być niepoprawne lub nieaktualne. – Guffa

+0

Oczywiście miałem na myśli document.getElementById, a nie document.id. Brainfart z mojej strony ... – Paul

0

Tak, są. Pochodzą one z okresu, w którym Internet Explorer 4 i Netscape 4.x były głównymi przeglądarkami: document.layers został użyty przez Netscape i document.all z IE. Pierwszy z nich jest zdecydowanie nieużywany, gdzie domyślam się, że document.all jest nadal używany w starszych wersjach IE.

Powiązane problemy