...
Jede Seite, die dieses Manifestattribut enthält, wird zwischengespeichert, wenn der Benutzer darauf zugreift. Wenn das Manifest-Attribut nicht angegeben ist, wird es nicht zwischengespeichert (es sei denn, die Seite ist direkt in der Manifestdatei angegeben). Es gibt keinen einheitlichen Standard für die Manifestdateierweiterung. Die empfohlene Erweiterung ist „.appcache“.
2. Konfigurieren Sie den MIME-Typ der Manifestdatei auf der Serverseite.
Eine Manifestdatei muss vom richtigen MIME-Typ unterstützt werden. Muss auf dem verwendeten Webserver konfiguriert werden. Beispiel: In Apache können Sie Folgendes hinzufügen: AddType text/cache-manifest manifest in .htaccess. In HTML5 ist das Objekt, das diese Funktion trägt, das EventSource-Objekt.
Die Schritte sind wie folgt:
1. Überprüfen Sie die Unterstützung des Browsers für das EventSource-Objekt. Jeder weiß das:
if(typeof(EventSource) !== "undefiniert")
{
// Ja! Unterstützung für vom Server gesendete Ereignisse.....
}sonst {
// Entschuldigung! Unterstützung für vom Server gesendete Ereignisse.
}
2. Serverseitiger Nachrichtensendecode
Das serverseitige Senden von Aktualisierungsnachrichten ist sehr einfach: Nach dem Festlegen der Inhaltstyp-Header-Informationen auf „text/event-stream“ können Sie das Ereignis senden. Nehmen Sie den ASP-Code als Beispiel:
<%
Response.ContentType="text/event-stream"
Response.Expires=-1
Response.Write("data: >> Server Time" & now() )
Response.
%>
3 Code kopieren
Der Code lautet wie folgt:Codebeschreibung:
• Erstellen Sie ein EventSource-Objekt und Geben Sie die Seiten-URL an, um Aktualisierungen zu senden (hier ist demo_see.jsp).
• Jedes Mal, wenn ein Update empfangen wird, wird das Onmessage-Ereignis ausgelöst.
• Wenn die Onmessage-Zeit ausgelöst wird, werden die erhaltenen Daten auf das Element mit gesetzt id="result"
Das EventSource-Objekt ist zusätzlich zum onmessage-Event. Darüber hinaus gibt es onerror-Events zur Fehlerbearbeitung, onopen-Events zum Verbindungsaufbau usw.
Desktop-Benachrichtigung – Quasi-HTML5-Funktion
Die Desktop-Benachrichtigungsfunktion ermöglicht es dem Browser, Benutzer über Nachrichten zu benachrichtigen, auch wenn diese minimiert sind. Dies ist die natürlichste Kombination mit WebIM. Der einzige Browser, der diese Funktion derzeit unterstützt, ist jedoch Chrome. Pop-up-Fenster sind etwas, das jeder hasst, daher ist zum Aktivieren dieser Funktion die Erlaubnis des Benutzers erforderlich.
Code kopieren
Der Code lautet wie folgt:
Code kopieren
Der Code lautet wie folgt:
$(window).bind ( 'blur', this.windowBlur).bind( 'focus', this.windowFocus);
Bei dieser Methode ist zu beachten, dass der Veranstaltungspunkt so früh wie möglich erfolgen sollte. Wenn die Registrierung zu spät erfolgt, kann es leicht passieren, dass der Benutzer den Status falsch einschätzt, wenn er die Seite öffnet Blätter.
3. Wenn der Benutzer mehrere Registerkarten verwendet, um mehrere Seiten mit IM zu öffnen, wird keine Benachrichtigung angezeigt, solange sich eine Seite im Fokusstatus befindet.
Die Statusfreigabe zwischen mehreren Seiten kann durch lokale Speicherung erreicht werden:
• Wenn das Browserfenster Fokus ist, ändern Sie den Wert des angegebenen Schlüssels im lokalen Speicher in „Fokus“
• Wenn das Browserfenster Unschärfe ist, ändern Sie den Wert des angegebenen Schlüssels im lokalen Speicher in „Unschärfe“ .
Es ist zu beachten, dass beim Wechsel von einem Tab zu einem anderen Tab in Chrome die Unschärfe möglicherweise nach dem Fokus in den Speicher geschrieben wird, sodass beim Ändern des Fokusstatus eine asynchrone Verarbeitung erforderlich ist.
/*Fenster bei Fokusereignis */
//Die Verzögerung wird verwendet, um das Problem zu lösen, dass der Fokus immer das Unschärfeereignis anderer Tabs abdeckt, wenn zwischen mehreren Tabs gewechselt wird
//Hinweis: Wenn vor dem Klicken auf die Tabulatortaste kein Fokus auf dem Dokument liegt, Durch Klicken auf die Tabulatortaste wird Focus nicht ausgelöst.
Storage.setItem( 'kxchat_focus_win_state', 'blur' );
Nachdem Sie die obige Statusfreigabe erkannt haben, müssen Sie nach dem Eintreffen der neuen Nachricht nur noch prüfen, ob der Wert von 'kxchat_focus_win_state' Im lokalen Speicher ist Unschärfe vorhanden. Das Popup-Fenster dient nur der Unschärfe.
4. So ermöglichen Sie Benutzern, auf die schwebende Benachrichtigungsebene zu klicken, um ein bestimmtes Chatfenster zu finden.
Das Benachrichtigungsfenster unterstützt Onclick- und andere Ereignisantworten, und der Umfang der Antwortfunktion gehört zu der Seite, die das Fenster erstellt hat . Der folgende Code:
Code kopieren title,
content
//Stellen Sie sicher, dass es nur eine Erinnerung gibt
n.replaceId =
n.onclick = function() {
//Aktivieren Sie das Browserfenster, das das Benachrichtigungsfenster öffnet
window.focus(
//Öffnen Sie das IM-Fenster
WM.openWinByID( data ) ;
//Schließe das Benachrichtigungsfenster
n.cancel();
Das Fensterobjekt, auf das in der Onclick-Antwortfunktion zugegriffen wird, gehört also zur aktuell erstellten Seite Es ist einfach, mit der aktuellen Seite zu interagieren. Der obige Code erkennt, dass durch Klicken auf das Popup-Fenster zum entsprechenden Browserfenster gesprungen und das IM-Fenster geöffnet wird.
: Verwandte Ereignisse auf der Seite haben oft einen unsicheren Zeitpunkt, daher sollte unser Code versuchen, nicht davon auszugehen, dass die Reihenfolge, in der bestimmte Ereignisse ausgelöst werden, sicher ist. Zum Beispiel die oben genannten Unschärfe- und Fokusereignisse
Praktische Referenz:
Offizielles Dokument:
http://www.w3schools.com/html5/
Ein chinesisches Tutorial für HTML5: http: //www.gbin1.com/tutorials/html5-tutorial/