it-swarm.com.de

Was ist der Unterschied zwischen der Dokumentauswahl und der Fensterauswahl?

Ich habe die folgende JQuery-Funktion, die Benutzereingaben aufnimmt und auf dem Bildschirm anzeigt. Wenn ich für $(document) und $(window) auswähle, funktioniert die Funktion. Was ist der Nachteil bei der Verwendung eines Selektors? Wo kann ich mehr über diese Selektoren und ihre Unterschiede lesen?

Danke im Voraus.

  $(document).keypress(function(e) {
      if(e.keyCode == 13) {
          var id = $("input#example").val()
          console.log(id);
          $('#data').append(id);
      }
  });
19
JZ.

Bei der Verwendung des window- oder document-Objekts in einem jQuery-Dom-Selektor werden Sie meist keinen Unterschied zwischen den beiden feststellen.

Beachten Sie jedoch, dass es sich nicht um dasselbe Objekt handelt.

window - verweist auf das Ansichtsfenster. Es wird als globales Hauptobjekt in JavaScript verwendet. 
document - ein direkter Nachkomme von window; verweist auf das Stammverzeichnis des Dokumentbaums .

Alle DOM-Elemente sind ein Nachkomme von document, das ein direkter Nachkomme von window ist.

11
Shaz

Mit $(window) können Sie das Ansichtsfenster auswählen

Der $(document)-Selektor gilt für das gesamte Dokument (dh, was sich im <html>-Tag befindet, auch wenn es über den Viewport hinausgeht).

20
Itai Sagi

Um diese Frage zu beantworten, möchte ich mit der Definition des DOM beginnen, was wir allgemein als "document" kennen.

Das Document Object Model (DOM) ist eine Anwendungsprogrammierschnittstelle (API) für gültiges HTML und wohlgeformte XML-Dokumente. Es definiert die logische Struktur von Dokumenten und die Art und Weise, wie auf ein document-Objekt zugegriffen und diese bearbeitet wird. In der DOM-Spezifikation wird der Begriff "Dokument" im weitesten Sinne verwendet.

Lassen Sie mich nun ein wenig von dem erklären, was ich über browsing contexts gefunden habe, da dies die Beziehung ist, die ein Document und ein Window normalerweise haben - obwohl es wichtig ist zu erwähnen, dass ein Document ohne browsing context existiert, aber Sie sollten dies niemals mit jquery sehen .

Ein Benutzer interagiert mit der Hauptansicht von Document. Eine Ansicht ist als das Medium definiert, das verwendet wird, um dem Benutzeragenten Document zu präsentieren - z. Bildschirm, Druck, Rede. Die Hauptansicht ist die Standardansicht und wird durch ein AbstractView-Objekt dargestellt, das die Window-Schnittstelle implementiert.

Und um es ganz einfach zu sagen: window ist der Container und document ist der Inhalt. Ich empfehle jedoch, die Dokumentation zumindest durchzusehen, um ein besseres Verständnis zu erreichen.

Quellen:

0
Edd