javascript - 如何缩短此 JQuery 代码

标签 javascript jquery

我是 javascript/jQuery 新手。有没有办法让这段代码更短?

else if (players == 6) {
    $('#box1').addClass("col-md-4");
    $('#box1').removeClass("col-md-6");
    $('#box2').addClass("col-md-4");
    $('#box2').removeClass("col-md-6");
    $('#box3').addClass("col-md-4");
    $('#box3').removeClass("col-md-6");
    $('#box4').addClass("col-md-4");
    $('#box4').removeClass("col-md-6");
    $('#box4').removeClass("col-md-offset-4");
    $('#box5').addClass("col-md-4");
    $('#box5').removeClass("col-md-6");
    $('#box6').addClass("col-md-4");
    $('#box6').removeClass("col-md-6");
    $('#box1').show();
    $('#box2').show();
    $('#box3').show();
    $('#box4').show();
    $('#box5').show();
    $('#box6').show();
}

最佳答案

您可以combine the selectors并通过链接应用每个方法。

else if (players == 6) {
   $('#box1,#box2,#box3,#box4,#box5,#box6')
        .addClass("col-md-4")
        .removeClass("col-md-6")
        .show();
}
<小时/>

或者使用attribute starts with the selector .

else if (players == 6) {
   $('[id^="box"]')
        .addClass("col-md-4")
        .removeClass("col-md-6")
        .show();
}

<小时/> 或者对元素使用通用类并基于该类进行选择。

else if (players == 6) {
   $('.box')
        .addClass("col-md-4")
        .removeClass("col-md-6")
        .show();
}

关于javascript - 如何缩短此 JQuery 代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42693068/

相关文章:

javascript - 在 Javascript 中通过 onclick 调用多个函数的最佳方法是什么

javascript - JSPM ...从命令行运行节点应用程序,而不是通过 index.html?

javascript - 我如何使用带有多个图像上传按钮的 WordPress Media Uploader

javascript - 有没有办法检查气泡是否触发了点击?

调用时 Javascript 代码不可用

javascript - 在函数内部使用 "this"- nodeJS

javascript - 在 HTML5 和 JavaScript 中循环访问 localStorage

javascript - 在 jQuery 插件初始化中使用 PHP 变量?

javascript - 初始化 HandsOntable 时摆脱 TypeError

javascript - 如何使 Bootstrap 弹出窗口在单独的元素中处理 HTML 内容