0

我正在一些按钮中进行一些转换,这些按钮将显示一些内容,当您按下按钮时,内容滑动和淡出,其他内容淡入并滑动到 vew,效果非常好,但是当您按两次相同的按钮时它只是滑动并淡出然后再次出现,如果已经显示该部分,我希望不能按下按钮。

我给你留下我用于该功能的代码:

    $(".btns-segur-desarr ul").on("click", changeArticule);

function changeArticule (data) {
    var target = data.target.className;
    var secciones = ["#seccion-fuego","#seccion-bateria","#seccion-sismo","#seccion-extintor"];
    $("#" + target).css("right", -"80");

    for (var i = 0; i < secciones.length; i++) {
        if($(secciones[i]).hasClass("aVista")){
            $(secciones[i]).animate({
                right: "40",
                opacity: "0"
            });
        $(secciones[i]).removeClass("aVista");
        }
    };

    $("#" + target).addClass("aVista");
    $("#" + target).animate({
        right:"0",
        opacity: "1"
    })

}

如果有人能帮助我得到这个我将不胜感激我正在学习 java Script 和 j 查询并且只是卡住了:/

4

1 回答 1

1

您可以使用 jQuery 的.one()绑定来确保事件触发一次且仅触发一次。但是,当您想要重新启用按钮时,这将要求您重新绑定事件。

更好的解决方案是让您的事件在单击时添加一个类,然后检查该类以查看它是否应该再次触发。例如: $(data.target).addClass("clicked")if ($(data.target).hasClass("clicked")) return false;

当您想要重新启用该按钮时,这将为您提供更多的灵活性。

于 2013-04-16T17:58:47.353 回答