jQuery - 有什么区别

时间:2012-07-12 09:38:03

标签: javascript jquery javascript-events

我正在检查我的一个客户端代码并遇到了这个问题。

$(document).ready(function() {
    function foo1() {
        $("#id1").bind('click', function() {});
    }
    foo1();

    function foo2() {
        $("#id2").bind('click', function() {});
    }
    foo2();
});

他们正在做的是,在函数内附加事件处理程序,然后调用该函数。

它与以下内容有何不同?

$(document).ready(function() {
    $("#id1").bind('click', function() {});
    $("#id2").bind('click', function() {});
});

这是直接在$(document).ready()函数中附加事件处理程序。

它在两个场景中都运行良好,我只是想知道是否存在一些与性能相关的问题。就像一个工作更快或更慢。或者它是一种标准的做事方式,我不知道。

1 个答案:

答案 0 :(得分:1)

您可以重复使用该部分代码再次在代码中的任何位置调用foo2(),而不是复制整个代码。

编辑:

让我举个例子

失败时,需要显示“你好,这是错误的警告!”你可以做这两件事:

alert('Hello, that was going wrong!');

function showError() {
alert('Hello, that was going wrong!');
} 
showError();

解决方案1似乎是最简单的解决方案。

但是..... 想象一下,你正在开发一个非常大的项目,其中有1000个地方显示错误的地方。现在,您需要在1000个地方而不是仅仅在一个地方编辑您的消息。

或者,当您想要显示HTML弹出窗口而不是警报时,请想象一下。

希望解释有意义,何时请告诉我。