2012-07-26 6 views
13

ich den Körper und HTML-Teile des Dokuments auswählen kannDokument root wählt mit Jquery

$('body') 

und

$('html') 

bzw. verwenden, aber wie wähle ich den Document-Root?

+4

'$ (document)' ...? – undefined

+1

Warum willst du? Sie müssen jQuery nicht für alles verwenden - es ist völlig in Ordnung, auch JavaScript zu verwenden. – Ariel

+0

Lustig genug '$ (document) .html()' gibt '' 'hier zurück (mit _jQuery 1.71_), während' $ (document) .text() 'das erwartete Ergebnis liefert. – zrajm

Antwort

21

nicht sicher, was du meinst, aber das Dokument, das Sie tun, um zu wählen

$(document); 

Um den Inhalt des Dokuments zu erhalten Ich vermute, Sie brauchen document, die genau das gleiche wie das <html>-Tag ist in die meisten Umgebungen.

$(document.documentElement); 
+3

'document.documentElement' zeigt auf das' html' Element ... nur zu sagen :) –

+0

Funktioniert perfekt. Danke adeneo :) –

+1

Überraschendes "Dokument" ist nicht innerhalb einer Zeichenkette. – Panzercrisis

2

Die Document-Schnittstelle erbt von Node und repräsentiert das gesamte Dokument, z. B. eine HTML-Seite. Obwohl der Document-Knoten konzeptionell die Wurzel eines Dokuments ist, ist er nicht physisch der Root - der Root-Knoten ist der erste Element-Knoten im Dokument und wird durch seine Eigenschaft documentElement repräsentiert.

Sie können wählen mit document folgenden Code:

var root = document.documentElement; 

ODER

$(document.documentElement); 
2

Die Wurzel des DOM ist immer das html Element.
Sie können es entweder mit $('html') oder $(':root') erhalten.

Folgende Aussagen sollten immer wahr sein:

$('html')[0] === $(':root')[0] 
$(':root')[0] === document.documentElement 
Verwandte Themen