Wenn ein bestimmtes Ereignis eintritt, möchte ich, dass meine Website dem Benutzer einen kurzen Benachrichtigungston wiedergibt.
Der Sound sollte beim Öffnen der Website nicht (sofort) automatisch gestartet werden. Stattdessen sollte es bei Bedarf über JavaScript abgespielt werden (wenn dieses bestimmte Ereignis eintritt).
Es ist wichtig, dass dies auch in älteren Browsern (IE6 und dergleichen) funktioniert.
Grundsätzlich gibt es also zwei Fragen:
- Welchen Codec soll ich verwenden?
- Was ist die beste Vorgehensweise zum Einbetten der Audiodatei? (
<embed>
vs.<object>
vs. Flash vs.<audio>
)
Antworten:
Diese Lösung funktioniert mit nahezu allen Browsern (auch ohne Flash):
Browser-Unterstützung
<audio>
(Moderne Browser)<embed
> (Fallback)Verwendete Codes
quelle
Ab 2016 reicht Folgendes aus (Sie müssen nicht einmal einbetten):
Sehen Sie hier mehr .
quelle
Uncaught (in promise) DOMException
Ein weiteres Plugin zum Abspielen von Benachrichtigungstönen auf Websites: Ion.Sound
Vorteile:
Plugin einrichten:
quelle
Wie wäre es mit dem Mediaplayer von Yahoo? Betten Sie einfach die Bibliothek von Yahoo ein
Und benutze es gerne
Zum Autostart
quelle
display: none
, wird der Sound nicht mehr abgespielt. Außerdem zeigt die Yahoo-Medienbibliothek ein kleines "Wiedergabesymbol" links vom Link.visiblity: hidden;
ist Ihre AntwortSpielen Sie browserübergreifende Benachrichtigungen ab
Überprüfen Sie das Howler.js- Plugin, wie von @Tim Tisdall in diesem Beitrag empfohlen .
Browser wie Chrome deaktivieren die
javascript
Ausführung, wenn sie minimiert oder inaktiv sind, um die Leistung zu verbessern. Dies spielt jedoch Benachrichtigungstöne ab, selbst wenn der Browser vom Benutzer inaktiv oder minimiert ist.Hoffnung hilft jemandem.
quelle
sound.play()
? Bringt Howler alle Ihre setTimeouts in einen Wrapper?Verwenden Sie die Datei audio.js, bei der es sich um eine Polyfüllung handelt, damit das
<audio>
Tag mit Fallback blinkt.Im Allgemeinen finden Sie unter https://github.com/Modernizr/Modernizr/wiki/HTML5-Cross-Browser-Polyfills Informationen zu Polyfills für die HTML 5-APIs. ( Es enthält mehr
<audio>
Polyfills. )quelle
Wenn Sie ein Ereignis für den Code aufrufen möchten, erstellen Sie am besten einen Trigger, da der Browser nicht reagiert, wenn sich der Benutzer nicht auf der Seite befindet
Jetzt können Sie Ihre Taste auslösen, wenn Sie Sound abspielen möchten
quelle
Dieser Code stammt von talkerscode. Das vollständige Tutorial finden Sie unter http://talkerscode.com/webtricks/play-sound-on-notification-using-javascript-and-php.php
quelle
Wir können einfach Audio und ein Objekt zusammen verwenden wie:
und sogar
addEventListener
fürplay
und hinzufügenended
quelle
Ich habe eine saubere funktionale Methode zum Abspielen von Sounds geschrieben:
quelle