jQuery: используйте альтернативу .toggle (), которая устарела

У меня есть несколько изображений с именем класса.mute_btn» и когда я нажимаю на них, мой источник изображений меняется:

$('.mute_btn').toggle(function () {
        var clicked = false;
        var src = $(this).attr("src");
        src = src.replace(/(.*)\.(png|gif|jpg|jpeg)$/, "$1-over.$2");
        $(this).attr("src", src);
    }, function () {
      var src = $(this).attr("src");
      src = src.replace(/(.*)-over\.(png|gif|jpg|jpeg)$/, "$1.$2");
      $(this).attr("src", src);
    });

Но я'Я видел, что toggle () устарела в jQuery 1.8

Так что я'Я пытаюсь сделать это так:

var clicked = false;
$('.mute_btn').click(function() {
        if (clicked) {

            var src = $(this).attr("src");
            src = src.replace(/(.*)-over\.(png|gif|jpg|jpeg)$/, "$1.$2");
            $(this).attr("src", src);
            clicked = false;
        }
        else {
            var src = $(this).attr("src");
            src = src.replace(/(.*)\.(png|gif|jpg|jpeg)$/, "$1-over.$2");
            $(this).attr("src", src);
            clicked = true;
        }});

Но результат не идеален. Иногда изображения не меняют состояние.

Знаешь что'S не так ?

Ответы на вопрос(4)

Ваш ответ на вопрос