2011-10-07 10 views
6

Czy ktoś może mi powiedzieć różnicę między tymi dwoma poleceniami JavaScript?
Co to jest zgodność tych dwóch elementów w najważniejszych przeglądarkach? Wiem, że documentElement jest kompatybilny z większością przeglądarek.document.documentElement vs document.all

Dzięki

+1

[Nie używaj document.all] (http://simonwillison.net/2003/Aug/11/documentAll/) – Clive

+1

ludzie mówią o 'document.querySelector()' teraz dzień ... – Mohsen

+0

Pytanie, które ma więcej sensu, dotyczy różnicy między document.getElementById a document.all http://stackoverflow.com/questions/2408424/document-all-vs-document-getelementbyid od document.documentElement i document. wszystkie są zupełnie inne bestie –

Odpowiedz

5

document.all jest zastrzeżonym rozszerzeniem Microsoft do standardu W3C.
To stara funkcja i nie należy jej już używać!

RFC document.all vs. document.getElementById

+0

Należy zauważyć: 'document.all' jest miłym mieć liczbę elementów DOM na stronie. Po prostu uruchom w konsoli: 'document.all.length' –

5

document.documentElement jest odniesienie do elementu głównego dokumentu, zazwyczaj znacznikiem <html>.

document.all to typ kolekcji zawierający wyliczenie wszystkich znaczników podrzędnych w dokumencie. Jest to specyficzna specyfikacja IE i należy jej unikać w przypadku skryptów z różnymi przeglądarkami.

document.documentElement to DOM Level 2, więc powinien działać praktycznie w każdej większej przeglądarce w dzisiejszych czasach.

+0

pracowałem nad aplikacją internetową, która musi być kompatybilna z Safari. głównym problemem, z którym się spotkałem, był dokument.all został użyty dla IE.jest tam jakikolwiek odpowiednik document.all ???? – farjad