web-dev-qa-db-ja.com

jQueryを使用したビデオのミュート/ミュート解除

JQueryでミュート/ミュート解除ボタンを作成したいと思います。私はStackoverflowでいくつかの検索を行いましたが、これは私がこれまで何とかしたことです:

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

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

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

});

何らかの理由でミュートを解除することはできますが、ミュートを戻すことはできません。

コードの何が問題なのでしょうか?

19
oneday

if( $("video").prop('muted', true) )を実行しているときは、プロパティをtrueに設定してから、それが本当かどうかを尋ねています。

条件をif( $("video").prop('muted') )に変更すると、問題が解決します- Here's の例。

また、これはページ上のすべての動画で機能するため、複数のプレーヤーがいる場合は混乱する可能性があります。

27
Ronny