Heim  >  Artikel  >  Web-Frontend  >  jQuery之load、unload、onunload和onbeforeunload - liuyueyue

jQuery之load、unload、onunload和onbeforeunload - liuyueyue

巴扎黑
巴扎黑Original
2017-06-29 10:38:114203Durchsuche

 1.load: Die jQuery-load()-Methode ist eine einfache, aber leistungsstarke AJAX-Methode. Die Methode „load()“ lädt Daten vom Server und platziert die zurückgegebenen Daten im ausgewählten Element.

Syntax: $(selector).load(URL,data,callback );

  Der erforderliche Parameter URL gibt die URL an, die Sie laden möchten.

Der optionale Parameter data gibt den Abfrage-StringSatz von Schlüssel/Wert-Paaren an, der mit der Anfrage gesendet werden soll.

Der optionale Parameter callback ist der Name der Funktion, die nach Abschluss der Methode „load()“ ausgeführt werden soll.

Dies ist der Inhalt der Beispieldatei („demo_test.txt“):

  <h2>jQuery and AJAX is FUN!!!</h2>
  <p id="p1">This is some text in a paragraph.</p>

Das folgende Beispiel lädt den Inhalt der Datei „demo_test.txt“. txt" in das angegebene

-Element:

Beispiel: $("#p1").load("demo_test.txt");
Sie können auch jQuery-Selektoren zu URL-Parametern hinzufügen.

Das folgende Beispiel lädt den Inhalt des Elements mit id="p1" in der Datei „demo_test.txt“ in das angegebene

-Element:

  $("#p1").load("demo_test.txt #p1");

Optional Der Rückruf Der Parameter gibt die Rückruffunktion an, die zugelassen werden soll, wenn die Methode „load()“ abgeschlossen ist. Die Callback-Funktion kann verschiedene Parameter festlegen:

  • responseTxt – enthält den Ergebnisinhalt, wenn der Aufruf erfolgreich ist

  • statusTXT – Enthält den Status des Anrufs

  • xhr – Enthält das XMLHttpRequest-Objekt

Das Das folgende Beispiel wird geladen (). Nach Abschluss der Methode wird ein Eingabeaufforderungsfeld angezeigt. Wenn die Methode „load()“ erfolgreich war, wird „Externer Inhalt erfolgreich geladen!“ angezeigt, und wenn sie fehlschlägt, wird eine Fehlermeldung angezeigt:

 $("button").click(function(){

„Externer Inhalt erfolgreich geladen!“);

if(statusTxt=="error")

warning("Error: "+xhr.status+": "+xhr .statusText);

  });

 });

Wenn der Benutzer die Seite verlässt, tritt das Entladeereignis auf.

Insbesondere wird das Entladeereignis ausgegeben, wenn Folgendes eintritt:

Klicken Sie auf einen Link, um die Seite zu verlassen

  $(window).unload(function(){
     alert("Goodbye!");
  });

Geben Sie die neue URL in die Adressleiste ein

    Verwenden Sie die Vor- oder Zurück-Taste
  • Schließen Sie den Browser
  • Seite neu laden
  • Die unload()-Methode bindet das
  • Ereignishandler

    -Programm an das Entladeereignis.

  • Die unload()-Methode gilt nur für Fensterobjekte.

  • 🎜>

Verwendung: object.onbeforeunload = handler Beschreibung: Das onunload-Ereignis wird ausgelöst, wenn der Benutzer eine Seite schließt.

Ausgelöst durch:

 
·Beim Klicken auf Zurück, Vorwärts, Aktualisieren wird eine der Homepages
 ·Beim Klicken auf einen URL-Link zu anderen Seiten
 
·Beim Aufrufen eines der folgenden Ereignisse: Klicken,
Dokument schreiben, Dokument öffnen, Dokument schließen, Fenster schließen, Fenster Navigieren, Fenster NavigateAndFind, Standort ersetzen, Standort neu laden, Formular senden.
 ·Wenn Sie Fenster öffnen verwenden, um eine Seite zu öffnen, übergeben Sie den Namen des Fensters auf dieser Seite an die zu öffnende Seite.  
·Bei der Neuzuweisung des Werts von location.href.
 
·Beim Absenden eines Formulars mit einer bestimmten Aktion über die Schaltfläche „Eingabetyp“ = „Senden“.


Beispiel:

  <html xmlns="http://www.w3.org/1999/xhtml" >
  <head>
    <meta http-equiv= "Content-Type" content="text/html; charset=gb2312" / >
    <title>onunload测试</title>
    <script>
      function checkLeave(){
        alert("欢迎下次再来!");
      }
    </script>
  < ;/head>
  <body onunload="checkLeave()"></body>
  </html>
  

  4.onbeforeunload:

  说明:目前三大主流浏览器中firefox和IE都
  用法:
  ·object.onbeforeunload = handler
  ·
  描述:
  事件触发的时候弹出一个有确定和取消的对话框,确定则离开页面,取消则继续待在本页.handler可以设一个返回值作为该对话框的显示文本.

Ausgelöst durch:
·Schließen Sie das Browserfenster
·Beim Aufrufen anderer Seiten über die Adressleiste oder Favoriten
·Wenn Sie auf „Zurück“, „Weiter“, „Aktualisieren“ oder auf eine der Homepages klicken
 ·Wenn Sie auf einen URL-Link zu anderen Seiten klicken
·Rufen Sie eine der folgenden Optionen auf Ereignisse: Klicken, Dokument schreiben, Dokument öffnen, Dokument schließen, Fenster schließen, Fenster navigieren, Fenster NavigateAndFind, Standort ersetzen, Standort neu laden, Formular senden
 ·Bei Verwendung von „Fenster öffnen“ zum Öffnen einer Seite, und übergeben Sie den Namen des Fensters dieser Seite an die zu öffnende Seite.
 ·Bei der Neuzuweisung des Werts von location.href.
 ·Beim Absenden eines Formulars mit einer bestimmten Aktion über die Schaltfläche „Eingabetyp“ = „Senden“.
 Kann in den folgenden Elementen verwendet werden:
 ·KÖRPER, FRAMESET, Fenster
 Plattformunterstützung:
IE4+/Win, Mozilla 1.7a+, Netscape 7.2+, Firefox0.9+
 Beispiel:

  <html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
    <title>onbeforeunload测试</title>
<script>
      function checkLeave(){
            event.returnValue="确定离开当前页面吗?";
      }
    <. /script>
  </head>
  <body onbeforeunload="checkLeave()"> ;</body>
  </html>

  但是onbeforeunload有个小毛病, 就是页面刷新时, 他还是会调用到onbe foreunload,为什么?其实刷新就相当于关闭了这个IE再重新打开的意思,因此还是会调用到onbeforeunload.

 

   究竟怎么解决刷新不调用onbeforeunload呢?

window.onbeforeunload = function(){
var n = window.event.screenX - window.screenLeft;
var b = n 🎜>20 ; if(b &&
window.event.clientY > window.event.altKey) { Alert(" soll geschlossen statt aktualisiert werden "); 🎜> "Schließen?";
}
else{ Alert("ist eher erfrischend als schließend
");                                              🎜>



Hinweis: Die letzten beiden Ereignisse in diesem Artikel sind zusammengestellt unter: http://www.cnblogs.com/fredlau/archive/ 2009/06/10/1500490.html, Danke an den ursprünglichen Autor

Das obige ist der detaillierte Inhalt vonjQuery之load、unload、onunload和onbeforeunload - liuyueyue. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn