2009-06-04 6 views

Antwort

76

Wenn beide Attribute auf ihre Werte (wie sie sollten) zustimmen, es ist genug, um einen von ihnen zu lesen. Ich würde vorschlagen, mit

document.documentElement.lang 
+0

Ruft dies das Attribut 'xml: lang' oder' lang' auf? –

+1

@KrisSelbebek: sollte das 'Lang'-Attribut sein, aber ich habe nichts getan, um dies zu überprüfen ... – Christoph

18

Nur.

document.getElementsByTagName('html')[0].getAttribute('lang'); 

Und mit dem Namespace

document.getElementsByTagName('html')[0].getAttribute('xml:lang'); 
2

Normalerweise ist die Frage „-Attribut von < html wie ‚lang‘bekommen >“ bedeutet „wie erklärt Sprache des Dokuments bekommen“. Im letzten Fall sollten Sie berücksichtigen, dass andere Elemente das Attribut "lang" enthalten können und ihren Inhalt in einer anderen Sprache markieren können. So umfassende Sprache des genauen Teils des Inhalts zu bekommen wäre so etwas wie diese:

var lang = $(element).closest('[lang]').attr('lang') || 'en'; 

Dieses Beispiel verwendet jQuery, aber die Idee ist einfach: Sie den DOM-Baum reisen müssen, bis ein Element finden mit ' Lang 'Attribut gesetzt.

+0

Dies ist nützlich, aber nicht die Frage, die speziell für die Einstellung auf dem HTML-Tag fragt. Sie können dies auf die akzeptierte Antwort oder die Frage kommentieren. – RSinohara

Verwandte Themen