Wie kann ich das tun? Wenn ein Benutzer auf einen Link klickt, wird ein Sound abgespielt. Verwenden Sie hier Javascript und JQuery.
.load(), .play()sie in entscheidenden Momenten die api verwenden.
Wie kann ich das tun? Wenn ein Benutzer auf einen Link klickt, wird ein Sound abgespielt. Verwenden Sie hier Javascript und JQuery.
.load(), .play()sie in entscheidenden Momenten die api verwenden.
Antworten:
https://github.com/admsev/jquery-play-sound
$ .playSound (' http://example.org/sound.mp3 ');
Fügen Sie ein <audio>Element auf Ihre Seite ein.
Holen Sie sich Ihr Audioelement und rufen Sie die play()Methode auf:
document.getElementById('yourAudioTag').play();
Schauen Sie sich dieses Beispiel an: http://www.storiesinflight.com/html5/audio.html
Diese Seite deckt einige der anderen kühlen Dinge , die Sie wie tun können load(), pause()und einige andere Eigenschaften des Audio - Element.
Wann genau Sie dieses Audioelement abspielen möchten, liegt bei Ihnen. Lesen Sie den Text der Schaltfläche und vergleichen Sie ihn mit "Nein", wenn Sie möchten.
http://www.schillmania.com/projects/soundmanager2/
SoundManager 2 bietet eine benutzerfreundliche API, mit der Sound in jedem modernen Browser, einschließlich IE 6+, abgespielt werden kann. Wenn der Browser HTML5 nicht unterstützt, erhält er Hilfe von Flash. Wenn Sie streng HTML5 und keinen Flash möchten, gibt es dafür eine Einstellung: prepareFlash = false
Es unterstützt 100% Flash-freies Audio auf iPad, iPhone (iOS4) und anderen HTML5-fähigen Geräten + Browsern
Die Verwendung ist so einfach wie:
<script src="soundmanager2.js"></script>
<script>
// where to find flash SWFs, if needed...
soundManager.url = '/path/to/swf-files/';
soundManager.onready(function() {
soundManager.createSound({
id: 'mySound',
url: '/path/to/an.mp3'
});
// ...and play it
soundManager.play('mySound');
});
Hier ist eine Demo in Aktion: http://www.schillmania.com/projects/soundmanager2/demo/christmas-lights/
So etwas gefunden:
//javascript:
function playSound( url ){
document.getElementById("sound").innerHTML="<embed src='"+url+"' hidden=true autostart=true loop=false>";
}
Verwenden des HTML5-Audio-Tags und der JQuery:
// appending HTML5 Audio Tag in HTML Body
$('<audio id="chatAudio">
<source src="notify.ogg" type="audio/ogg">
<source src="notify.mp3" type="audio/mpeg">
</audio>').appendTo('body');
// play sound
$('#chatAudio')[0].play();
Code von hier .
In meiner Implementierung habe ich das Audio direkt in den HTML-Code eingefügt, ohne dass jquery angehängt wurde.
Uncaught (in promise) DOMException: play() failed because the user didn't interact with the document first, Chrome Version 70.0.3538.102 (Official Build) (64-bit)... scheint hier eine Lösung zu sein: stackoverflow.com/a/52821721
JavaScript Sound Manager:
$('a').click(function(){
$('embed').remove();
$('body').append('<embed src="/path/to/your/sound.wav" autostart="true" hidden="true" loop="false">');
});
Ich habe eine kleine Funktion geschrieben, die dies mit der Web-Audio-API kann ...
var beep = function(duration, type, finishedCallback) {
if (!(window.audioContext || window.webkitAudioContext)) {
throw Error("Your browser does not support Audio Context.");
}
duration = +duration;
// Only 0-4 are valid types.
type = (type % 5) || 0;
if (typeof finishedCallback != "function") {
finishedCallback = function() {};
}
var ctx = new (window.audioContext || window.webkitAudioContext);
var osc = ctx.createOscillator();
osc.type = type;
osc.connect(ctx.destination);
osc.noteOn(0);
setTimeout(function() {
osc.noteOff(0);
finishedCallback();
}, duration);
};
Neuer Emerger ... scheint bisher mit IE, Gecko-Browsern und iPhone kompatibel zu sein ...
Der folgende Code kann Ihnen dabei helfen, Sound auf einer Webseite nur mit Javascript abzuspielen. Weitere Details finden Sie unter http://sourcecodemania.com/playing-sound-javascript-flash-player/
<script>
function getPlayer(pid) {
var obj = document.getElementById(pid);
if (obj.doPlay) return obj;
for(i=0; i<obj.childNodes.length; i++) {
var child = obj.childNodes[i];
if (child.tagName == "EMBED") return child;
}
}
function doPlay(fname) {
var player=getPlayer("audio1");
player.play(fname);
}
function doStop() {
var player=getPlayer("audio1");
player.doStop();
}
</script>
<form>
<input type="button" value="Play Sound" onClick="doPlay('texi.wav')">
<a href="#" onClick="doPlay('texi.wav')">[Play]</a>
<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"
width="40"
height="40"
id="audio1"
align="middle">
<embed src="wavplayer.swf?h=20&w=20"
bgcolor="#ffffff"
width="40"
height="40"
allowScriptAccess="always"
type="application/x-shockwave-flash"
pluginspage="http://www.macromedia.com/go/getflashplayer"
/>
</object>
<input type="button" value="Stop Sound" onClick="doStop()">
</form>
Das Wichtigste zuerst, das würde mir als Benutzer nicht gefallen.
Am besten verwenden Sie wahrscheinlich ein kleines Flash-Applet, das Ihren Sound im Hintergrund wiedergibt.
Auch hier beantwortet: Plattformübergreifende, browserübergreifende Möglichkeit, Sound aus Javascript abzuspielen?