Flash a une API pour contrôler le volume for a Sound object. Le volume peut-il être contrôlé comme ceci actuellement ou y a-t-il un support prévu pour <audio>
ou <video>
les éléments html5?Volume de contrôle d'élément audio/vidéo Javascript par programme?
Répondre
L'élément audio HTML 5 semble avoir un getter/setter de volume, donc vous pouvez faire quelque chose comme ça dans jQuery:
<script type="text/javascript" charset="utf-8">
$(function() {
var audio = $('#clip')[0];
$('#start').click(function() {
audio.play();
});
$('#stop').click(function() {
audio.pause();
});
$('#quiet').click(function() {
audio.volume = audio.volume - 0.2
});
$('#loud').click(function() {
audio.volume = audio.volume + 0.2
});
});
</script>
<audio id="clip">
<source src="/audio/safari.mp3" />
</audio>
<button id="start">start music</button
<button id="quiet">quieter</button>
<button id="loud">louder</button>
Source: http://www.whatwg.org/specs/web-apps/current-work/#user-interface
Cela semble fonctionner dans Safari 4, bien que je ne pouvais pas l'obtenir pour jouer avec FF 3.5.
(Remarque il n'y a pas de limites de contrôle dans le code ci-dessus ... vous obtenez une erreur javascript si vous essayez de définir la valeur inférieure à 0 ou au-dessus 1.)
-John
Juste un en tête, je trouve aussi que le volume pour la vidéo/audio ne fonctionne pas dans Mobile Safari. Vous pouvez mettre à jour la propriété et vérifier que vous avez effectivement changé la propriété de volume, mais l'iPad mobile de safari ne s'en soucie pas, c'est tout à propos de la bascule de volume de matériel apparemment.
Je n'ai pas non plus réussi à régler le volume sur un WAV dans Safari iPad. – Tim