【问题标题】:Toggle function Javascript切换功能 Javascript
【发布时间】:2012-02-21 12:01:37
【问题描述】:

我正在尝试使用“openclose(j)”函数单击对象时在两个类之间切换。我尝试仅使脚本 removeClass("arrow-down"),效果很好,但不会 addClass("arrow-up")。这真的很烦人:)

    function openclose(j){
        if(jQuery('#div_'+j).hasClass("arrow-down")) {
            jQuery('#div_'+j).removeClass("arrow-down").addClass("arrow-up");
        }
        if (jQuery('#div_'+j).hasClass("arrow-up")) {
            jQuery('#div_'+j).removeClass("arrow-up").addClass("arrow-down");
        }

        jQuery('#collaps_'+j).toggle(
            function () {

            }
        );
    }

非常感谢任何帮助,

问候, 马蒂亚斯

【问题讨论】:

标签: javascript jquery


【解决方案1】:

您可以使用 toggleClass() 来满足您的要求:

function openclose(j){
    jQuery('#div_'+j).toggleClass("arrow-down").toggleClass("arrow-up");
}

【讨论】:

  • 太棒了!这很有帮助!
【解决方案2】:

使用 else if 语句...

function openclose(j){
    if(jQuery('#div_'+j).hasClass("arrow-down")) {
        jQuery('#div_'+j).removeClass("arrow-down").addClass("arrow-up");
    }
    else if (jQuery('#div_'+j).hasClass("arrow-up")) {
        jQuery('#div_'+j).removeClass("arrow-up").addClass("arrow-down");
    }

    jQuery('#collaps_'+j).toggle(
        function () {

        }
    );
}

问题是您在添加“向上箭头”类后立即删除它!

您也可以考虑使用toggleClass JQuery 函数。

【讨论】:

  • jQuery 有一个toggleClass() 函数。
【解决方案3】:

为什么不使用.toggleClass()

jQuery('#div_'+j).toggleClass("arrow-down").toggleClass("arrow-up");

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-04-18
    • 1970-01-01
    • 1970-01-01
    • 2023-03-11
    • 1970-01-01
    • 2017-11-12
    • 2021-11-15
    • 1970-01-01
    相关资源
    最近更新 更多