HTML5 -Desktop -Benachrichtigungs -Demo und detaillierte Erl?uterung
Hallo allerseits! Heute werde ich Ihnen zeigen, wie Sie Desktop -Benachrichtigungen mit HTML5 und einer kleinen Menge JavaScript -Code durch eine einfache Demonstration implementieren. GitHub -Projekt
HTML5 Desktop -Erinnerungs Hintergrundinformationen
Benachrichtigungen erm?glichen es Benutzern, au?erhalb des Kontextes der Webseite zu erinnern, z. B. die Zustellung von E -Mails.
Sie k?nnen Benachrichtigungen anzeigen, anstellen und ersetzen. Sie k?nnen dem Nachrichtenk?rper auf der linken Seite auch ein Symbol hinzufügen, das auf der linken Seite des Meldungsk?rpers angezeigt wird. Sie k?nnen das tag
Mitglied auch für die Mehrfachinstanziation verwenden (das Ergebnis dieses Falls ist eine Benachrichtigung; die zweite Benachrichtigung ersetzt die erste Benachrichtigung durch das gleiche tag
). [Erfahren Sie mehr über die API von W3C Web Benachrichtigungen] (die W3C -Webbenachrichtigungen -API -Link sollte hier eingefügt werden).
Gem?? meinen Tests k?nnen Sie jeweils nur bis zu 4 Erinnerungen anzeigen und sie werden in der Warteschlange gestellt. Wenn Sie also eine ausschalten, wird der n?chste angezeigt und so weiter. Au?erdem k?nnen Sie keine Hyperlinks hineinstellen (dies w?re eine gro?artige Funktion). Das Erscheinungsbild von Desktop -Erinnerungen ist unten gezeigt.
Wie bei den meisten dieser Funktionen werden Sie aufgefordert, aus Sicherheitsgründen zu genehmigen.
script
Das Skript ist sehr einfach, es verwendet nur webkitNotifications
, um Desktop -Erinnerungen mit Titeln und Nachrichten zu generieren.
/* @Copyright: jQuery4u 2012 @Author: Sam Deering @Script: html5desktopalert.js */ (function($,W,D,undefined) { W.JQUERY4U = W.JQUERY4U || {}; W.JQUERY4U.HTML5DESKTOPALERT = { name: "jQuery HTML5 DESKTOP ALERT", namespace: "W.JQUERY4U.HTML5DESKTOPALERT", settings: { //turn into plugin? ... }, cache: { //runtime data, dom elements etc... }, init: function(settings) { this.settings = $.extend({}, this.settings, settings); this.cache.notifications = window.webkitNotifications; this.testBrowserSupport(); this.setupEventHandlers(); }, setupEventHandlers: function() { var _this = this; $('#alert-me-btn').bind('click', function(e) { _this.checkPermission("desktopAlert"); }); }, //tests HTML5 browser support and permission request testBrowserSupport: function() { var $browserMsg = $('#browser-support-msg'); if(this.cache.notifications) { $browserMsg.html("Yay! Notifications are supported on this browser.").parent().addClass('alert-success'); } else { $browserMsg.html("Sorry. Notifications aren't supported on this browser.").parent().addClass('alert-error'); } }, checkPermission: function(callback) { var _this = this; if (this.cache.notifications.checkPermission() == 0) { _this[callback](); } else { this.cache.notifications.requestPermission(function() { if (this.cache.notifications.checkPermission() == 0) _this[callback](); }); } }, desktopAlert: function() { console.log('sending alert...'); var notification = window.webkitNotifications.createNotification("", $('#da-title').val(), $('#da-message').val()); notification.show(); } } $(D).ready( function() { //start up the form events W.JQUERY4U.HTML5DESKTOPALERT.init(); }); })(jQuery,window,document);
HTML5 Desktop -Benachrichtigung FAQs (FAQs)
Wie k?nnen Sie Berechtigungen für HTML5 -Desktop -Benachrichtigungen anfordern?
Um Berechtigungen an HTML5 -Desktop -Benachrichtigungen anzufordern, müssen Sie die Methode Notification.requestPermission()
verwenden. Diese Methode fordert den Benutzer auf, zuzulassen oder zu verhindern, dass Ihre Webseite Benachrichtigungen sendet. Es ist zu beachten, dass diese Methode durch Benutzeraktionen (z. B. Klicken auf eine Schaltfl?che) ausgel?st werden sollte, um zu vermeiden, dass aus dem Browser die Blockierung von Berechtigungsanforderungen blockiert wird, die von Nicht-Benutzer-Interaktionen initiiert werden.
Kann ich das Erscheinungsbild von HTML5 -Desktop -Benachrichtigungen anpassen?
Ja, Sie k?nnen das Erscheinungsbild von HTML5 -Desktop -Benachrichtigungen anpassen. Sie k?nnen den Titel, den K?rpertext, die Symbole und sogar den Vibrationsmodus Ihres mobilen Ger?ts festlegen. Die Anpassungsstufen k?nnen jedoch je nach Browser und Betriebssystem variieren.
Werden HTML5 -Desktop -Benachrichtigungen von allen Browsern unterstützt?
Nein, nicht alle Browser unterstützen HTML5 -Desktop -Benachrichtigungen. Die meisten modernen Browser wie Chrome, Firefox und Safari unterstützen sie, aber der Internet Explorer nicht. Es wird immer empfohlen, die Kompatibilit?t dieser Funktion mit verschiedenen Browsern zu überprüfen.
Wie deaktiviert man HTML5 -Desktop -Benachrichtigungen?
Sie k?nnen die HTML5 -Desktop -Benachrichtigungen programmgesteuert schlie?en, indem Sie die Methode der Benachrichtigung aufrufen. Alternativ haben die meisten Desktop -Benachrichtigungen eine Schaltfl?che Schlie?en, auf die Benutzer klicken k?nnen. close()
Ja, Sie k?nnen HTML5 -Desktop -Benachrichtigungen senden, auch wenn Ihr Browser inaktiv oder minimiert ist. Dies erfordert jedoch die Verwendung von Dienstangestellten und Push -APIs, bei denen es sich um fortgeschrittenere Themen handelt.
Wie kann ich mit Klickereignissen auf HTML5 -Desktop -Benachrichtigungen umgehen?
Sie k?nnen Klick -Ereignisse auf HTML5 -Desktop -Benachrichtigungen verarbeiten, indem Sie in der Benachrichtigungsinstanz einen Ereignish?rer zum "Klicken" -Ereignis hinzufügen. Im Ereignishandler k?nnen Sie definieren, was passieren sollte, wenn Sie auf eine Benachrichtigung klicken.
Kann ich HTML5 -Desktop -Benachrichtigungen in meinem mobilen Browser verwenden?
Ja, Sie k?nnen HTML5 -Desktop -Benachrichtigungen in Ihrem mobilen Browser verwenden. Das Verhalten und das Aussehen von Benachrichtigungen k?nnen jedoch je nach Betriebssystem und Browser variieren.
Was sind die Einschr?nkungen oder Einschr?nkungen bei der Verwendung von HTML5 -Desktop -Benachrichtigungen?
Ja, es gibt einige Einschr?nkungen bei der Verwendung von HTML5 -Desktop -Benachrichtigungen. Beispielsweise muss der Benutzer Ihre Webseite die Berechtigung erteilen, Benachrichtigungen anzuzeigen. Darüber hinaus k?nnen einige Browser die H?ufigkeit von Benachrichtigungen einschr?nken, um Spam zu verhindern.
Kann ich HTML5 -Desktop -Benachrichtigungen in Web Worker verwenden?
Ja, Sie k?nnen HTML5 -Desktop -Benachrichtigungen in Web Worker verwenden. Sie müssen jedoch die
-Methode anstelle des Benachrichtigungskonstruktors verwenden. self.registration.showNotification()
Sie k?nnen überprüfen, ob der Benutzer HTML5 -Desktop -Benachrichtigungen Berechtigungen erteilt hat, indem Sie den Wert von
überprüfen. Wenn es "gew?hrt" wird, hat der Benutzer Berechtigungen erteilt. Wenn es "verweigert" wird, hat der Benutzer die Benachrichtigung blockiert. Wenn es "Standard" ist, hat der Benutzer keine Wahl getroffen. Notification.permission
Das obige ist der detaillierte Inhalt vonBeispiel für HTML5 -Desktop -Benachrichtigungen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Hei?e KI -Werkzeuge

Undress AI Tool
Ausziehbilder kostenlos

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem v?llig kostenlosen KI-Gesichtstausch-Tool aus!

Hei?er Artikel

Hei?e Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Hei?e Themen





Der Müllsammlung von JavaScript verwaltet den Speicher automatisch über einen Tag-Clearing-Algorithmus, um das Risiko eines Speicherlecks zu verringern. Der Motor durchquert und markiert das aktive Objekt aus dem Wurzelobjekt, und nicht markiert wird als Müll behandelt und gel?scht. Wenn das Objekt beispielsweise nicht mehr referenziert wird (z. B. die Variable nach NULL), wird es in der n?chsten Runde des Recyclings freigegeben. Zu den h?ufigen Ursachen für Speicherlecks geh?ren: ① Unger?te Timer oder Event -H?rer; ② Verweise auf externe Variablen in Schlie?ungen; ③ Globale Variablen halten weiterhin eine gro?e Datenmenge. Der V8 -Motor optimiert die Recyclingeffizienz durch Strategien wie Recycling von Generationen, inkrementelle Markierung, paralleles/gleichzeitiges Recycling und verkürzt die Hauptblockierungszeit. W?hrend der Entwicklung sollten unn?tige globale Referenzen vermieden und Objektverb?nde umgehend dekoriert werden, um die Leistung und Stabilit?t zu verbessern.

Es gibt drei g?ngige M?glichkeiten, HTTP-Anforderungen in Node.js zu initiieren: Verwenden Sie integrierte Module, Axios und Knotenfetch. 1. Verwenden Sie das integrierte HTTP/HTTPS-Modul ohne Abh?ngigkeiten, das für grundlegende Szenarien geeignet ist, jedoch eine manuelle Verarbeitung von Datengen?hten und Fehlerüberwachung erfordert, z. 2.Axios ist eine auf Versprechen basierende Bibliothek von Drittanbietern. Es verfügt über eine kurze Syntax und leistungsstarke Funktionen, unterstützt Async/Auseait, automatische JSON -Konvertierung, Interceptor usw. Es wird empfohlen, asynchrone Anforderungsvorg?nge zu vereinfachen. 3.Node-Fetch bietet einen Stil ?hnlich dem Browser-Abruf, basierend auf Versprechen und einfacher Syntax

JavaScript -Datentypen sind in primitive Typen und Referenztypen unterteilt. Zu den primitiven Typen geh?ren String, Anzahl, Boolesche, Null, undefiniertes und Symbol. Die Werte sind unver?nderlich und Kopien werden bei der Zuweisung von Werten kopiert, sodass sie sich nicht gegenseitig beeinflussen. Referenztypen wie Objekte, Arrays und Funktionen speichern Speicheradressen, und Variablen, die auf dasselbe Objekt zeigen, wirkt sich gegenseitig aus. Typeof und Instanz k?nnen verwendet werden, um die Typen zu bestimmen, aber auf die historischen Probleme der TypeOfnull zu achten. Das Verst?ndnis dieser beiden Arten von Unterschieden kann dazu beitragen, einen stabileren und zuverl?ssigeren Code zu schreiben.

Hallo, JavaScript -Entwickler! Willkommen in den JavaScript -Nachrichten dieser Woche! Diese Woche konzentrieren wir uns auf: Oracas Markenstreit mit Deno, neue JavaScript -Zeitobjekte werden von Browsern, Google Chrome -Updates und einigen leistungsstarken Entwickler -Tools unterstützt. Fangen wir an! Der Markenstreit von Oracle mit dem Versuch von Deno Oracle, ein "JavaScript" -Marke zu registrieren, hat Kontroversen verursacht. Ryan Dahl, der Sch?pfer von Node.js und Deno, hat eine Petition zur Absage der Marke eingereicht, und er glaubt, dass JavaScript ein offener Standard ist und nicht von Oracle verwendet werden sollte

Welches JavaScript -Framework ist die beste Wahl? Die Antwort besteht darin, die am besten geeigneten nach Ihren Bedürfnissen zu w?hlen. 1.React ist flexibel und kostenlos und für mittlere und gro?e Projekte geeignet, für die hohe Anpassungs- und Teamarchitekturf?higkeiten erforderlich sind. 2. Angular bietet vollst?ndige L?sungen, die für Anwendungen auf Unternehmensebene und langfristige Wartung geeignet sind. 3.. Vue ist einfach zu bedienen, geeignet für kleine und mittlere Projekte oder schnelle Entwicklung. Unabh?ngig davon, ob es einen technologischen Stack, die Teamgr??e, der Projektlebenszyklus gibt und ob SSR erforderlich ist, sind auch wichtige Faktoren für die Auswahl eines Rahmens. Kurz gesagt, es gibt keinen absolut besten Rahmen, die beste Wahl ist die, die Ihren Bedürfnissen entspricht.

IIFE (SofortinvokedFunctionExpression) ist ein Funktionsausdruck, der unmittelbar nach der Definition ausgeführt wird und zum Isolieren von Variablen und zur Vermeidung des kontaminierenden globalen Bereichs verwendet wird. Es wird aufgerufen, indem die Funktion in Klammern umwickelt ist, um sie zu einem Ausdruck und einem Paar von Klammern zu machen, gefolgt von ihr, wie z. B. (function () {/code/}) ();. Zu den Kernverwendungen geh?ren: 1.. Variable Konflikte vermeiden und die Duplikation der Benennung zwischen mehreren Skripten verhindern; 2. Erstellen Sie einen privaten Bereich, um die internen Variablen unsichtbar zu machen. 3.. Modularer Code, um die Initialisierung zu erleichtern, ohne zu viele Variablen freizulegen. Zu den allgemeinen Schreibmethoden geh?ren Versionen, die mit Parametern und Versionen der ES6 -Pfeilfunktion übergeben wurden. Beachten Sie jedoch, dass Ausdrücke und Krawatten verwendet werden müssen.

Versprechen ist der Kernmechanismus für den Umgang mit asynchronen Operationen in JavaScript. Das Verst?ndnis von Kettenanrufen, Fehlerbehebung und Kombination ist der Schlüssel zum Beherrschen ihrer Anwendungen. 1. Der Kettenaufruf gibt ein neues Versprechen durch .then () zurück, um asynchrone Prozessverkampferung zu realisieren. Jeder. Dann () erh?lt das vorherige Ergebnis und kann einen Wert oder ein Versprechen zurückgeben; 2. Die Fehlerbehandlung sollte .Catch () verwenden, um Ausnahmen zu fangen, um stille Ausf?lle zu vermeiden, und den Standardwert im Fang zurückgeben, um den Prozess fortzusetzen. 3. Combinatoren wie Promise.All () (erfolgreich erfolgreich erfolgreich nach allen Erfolg), Versprechen.Race () (Die erste Fertigstellung wird zurückgegeben) und Versprechen.Allsettled () (Warten auf alle Fertigstellungen)

Cacheapi ist ein Tool, das der Browser zur Cache -Netzwerkanfragen bereitstellt, das h?ufig in Verbindung mit dem Servicearbeiter verwendet wird, um die Leistung der Website und die Offline -Erfahrung zu verbessern. 1. Es erm?glicht Entwicklern, Ressourcen wie Skripte, Stilbl?tter, Bilder usw. Zu speichern; 2. Es kann die Cache -Antworten entsprechend den Anfragen übereinstimmen. 3. Es unterstützt das L?schen bestimmter Caches oder das L?schen des gesamten Cache. 4.. Es kann Cache -Priorit?ts- oder Netzwerkpriorit?tsstrategien durch Servicearbeiter implementieren, die sich auf Fetch -Ereignisse anh?ren. 5. Es wird h?ufig für die Offline -Unterstützung verwendet, die wiederholte Zugriffsgeschwindigkeit, die Vorspannungs -Schlüsselressourcen und den Inhalt des Hintergrundaktualisierungss beschleunigen. 6. Wenn Sie es verwenden, müssen Sie auf die Cache -Versionskontrolle, Speicherbeschr?nkungen und den Unterschied zum HTTP -Caching -Mechanismus achten.
