J'essaie d'utiliser un bouton pour démarrer une piste dans une balise audio HTML5 en utilisant jQuery, mais je reçois toujours une erreur.
var song = $('#audio');
$('#play').click(function() {
song.play();
});
Lorsque j'utilise document.getElementById ('audio'), cela fonctionne, mais lorsque j'utilise le sélecteur jQuery, j'obtiens l'erreur suivante:
TypeError non intercepté: l'objet [objet objet] n'a pas de méthode 'play'
Merci pour toute aide.
Essayez d'obtenir l'élément DOM natif car jQuery ne sait rien de la méthode .play
Sur le tableau encapsulé renvoyé par le sélecteur $('#audio')
:
song.get(0).play();
Vous pouvez également l'écrire comme song.trigger('play');
. Cela vous permettra d'utiliser le sélecteur $('#audio');
.
Au lieu de .get (), utilisez simplement la notation objet:
var song = $('#audio');
$('#play').click(function() {
song[0].play();
});
C'est moins de taper :)