web-dev-qa-db-fra.com

Activer / désactiver le son de la vidéo avec jQuery

Je voudrais faire un bouton muet/réactivé dans jQuery. J'ai fait quelques recherches sur Stackoverflow et c'est ce que j'ai réussi à faire jusqu'à présent:

$("video").prop('muted', true);

$("#mute-video").click( function (){
    if( $("video").prop('muted', true) )
    {
        $("video").prop('muted', false);
    }

    else {
    $("video").prop('muted', true);
    }

});

mais pour une raison quelconque, il est seulement capable de réactiver le son, pas de revenir en arrière.

Une idée du problème avec le code?

19
oneday

Lorsque vous effectuez if( $("video").prop('muted', true) ), vous définissez tous les deux la propriété sur true, puis vous demandez si c'est vrai.

Changer la condition en if( $("video").prop('muted') ) résout le problème - Voici un exemple.

Notez également que cela fonctionnera sur toutes les vidéos d'une page, donc si vous avez plus d'un joueur, cela peut devenir déroutant.

27
Ronny