0

我的学长给了我一项任务,将所有小的 javascript 和 jQuery 插件代码放在一个文件中,该文件将执行这些插件,具体取决于页面是否具有某些 .classes 或 #ids。我在想最好的方法是什么。

if -> else 在这种情况下会很简单,还是我应该更进一步并使用 .each 创建一些东西?

我还认为,随着插件和其他客户端代码数量的增加,将会出现严重的性能问题。但到目前为止,我们只有大约 5-10 个自调用函数。

4

2 回答 2

0

如果您有少量插件要检查,您可以真正使用您想要的。

如果没有,那么你应该从这个列表中选择:http: //jsperf.com/jquery-each-vs-for-loop/73

于 2013-05-14T07:58:08.430 回答
0

这样的事情怎么样?这取决于它必须循环通过多少元素。如果需要,您可以更具体地使用 span 或 div。

var a_i = 0, b_i = 0;

$("#ids").each(function() {
    a_i++;
});

$(".classes").each(function() {
    b_i++;
});

if(a_i != 0) {
    $.getScript("js/specific.plugin.min.js");
    $.executePluginFunctionNameThingyHere();
}

if(b_i != 0) {
    $.getScript("js/another-specific.plugin.min.js");
    $.executeOtherPluginFunctionNameThingyHere();
}

未经测试 - 但这是一般的想法。

于 2013-05-14T08:01:45.480 回答