Document#

Document.doctype#

Właściwość doctype zwraca deklarację typu dokumentu dla danego dokumentu. Jeśli dokument nie posiada deklaracji typu dokumentu to zwrócona zostanie wartość null. Właściwość jest tylko do odczytu.

Opis działania#

Samo wywołanie i poszczególne jego części najlepiej objaśnić na zapisie składniowym:

  1. L
  2. K
  3. T'
  4. T
  5. A
  6. O
  7. Z'
  8. Z
  9. #
var dtd = document.doctype;

gdzie poszczególne człony oznaczają:

W zależności od podejmowanej akcji muszą zostać wykonane następujące kroki:

Odczyt wartości atrybutu (getting):

  1. Zwróć dziecko z obiektu kontekstu, które jest węzłem typu DocumentType (jeśli istnieje), w przeciwnym razie zwróć wartość null.

Obiekt zwracany przez właściwość doctype implementuje interfejs DocumentType, dlatego ma dostęp do wszystkich poleceń z tego interfejsu (oraz z kolejnych interfejsów w łańcuchu dziedziczenia).

Więcej szczegółów związanych z deklaracjami typów dokumentów umieściłem w zbiorczym dziale "Podstawy - Rodzaje dokumentów".

Prosty przykład:

  1. L
  2. K
  3. T'
  4. T
  5. A
  6. O
  7. Z'
  8. Z
  9. #
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>

	<script>

		function getInfoDoc(desc, whatDoc){

			doc.write(desc + "<br>");
			doc.write("Interfejs: " + whatDoc + "<br>");
			doc.write("doctype: " + whatDoc.doctype + "<br>");
			if (whatDoc.doctype){
				doc.write("doctype.name: " + whatDoc.doctype.name + "<br>");
				doc.write("doctype.publicId: " + whatDoc.doctype.publicId + "<br>");
				doc.write("doctype.systemId: " + whatDoc.doctype.systemId + "<br>");
			}
			doc.write("<br>");

		}

		var doc = document; // domyślny dokument tworzony przez parser HTML
		getInfoDoc("Parametry dla domyślnego dokumentu tworzonego przez parser HTML (właściwość document):", doc);

		var newDocXML = doc.implementation.createDocument(null, null, null); // nowy dokument XML
		getInfoDoc("Parametry dla createDocument(null, null, null):", newDocXML);

		var newDocHTML = doc.implementation.createHTMLDocument(""); // nowy dokument HTML
		getInfoDoc("Parametry dla createHTMLDocument(''):", newDocHTML);

	</script>

</html>

Składnia Web IDL#

  1. L
  2. K
  3. T'
  4. T
  5. A
  6. O
  7. Z'
  8. Z
  9. #
interface Document : Node {
	readonly attribute DocumentType? doctype;
};

Specyfikacje i inne materiały#

Pasek społecznościowy

SPIS TREŚCI AKTUALNEJ STRONY

Document (H1) Document.doctype (H2) Opis działania (H3) Składnia Web IDL (H3) Specyfikacje i inne materiały (H3)