Javascript闭包(我认为)

Javascript闭包(我认为),javascript,closures,Javascript,Closures,我有一段我正在使用的代码,是以前的开发人员传给我的。我只是想更好地理解它,而不是单纯地使用它。代码如下: slides.paginator.click(function (e) { e.preventDefault(); interval.stop(); switchSlide($(this).index()); interval.start(); }); 我不理解的部分是通过这个匿名函数传递的参数e。我以前见过这种情况,我认为这与闭包有关,但我也不确定。有谁能

我有一段我正在使用的代码,是以前的开发人员传给我的。我只是想更好地理解它,而不是单纯地使用它。代码如下:

slides.paginator.click(function (e) {
    e.preventDefault();
    interval.stop();
    switchSlide($(this).index());
    interval.start();
});
我不理解的部分是通过这个匿名函数传递的参数
e
。我以前见过这种情况,我认为这与闭包有关,但我也不确定。有谁能给我一点关于这个参数
e
是如何工作的?我在其他情况下也看到过,比如jQuery的AJAX方法

即使给我指出一篇文章的正确方向也会有很大帮助。谢谢

“e”来自“event”,请检查jquery。单击()文档


函数(e){}替换“处理程序(eventObject)”

这是click事件本身一个非常一般的解释(忽略这是一个事件处理程序的事实):将函数传递到
slides.paginator中。单击
函数。当发生单击时,
slides.paginator.click将调用您的函数。
e
只是您传入的函数中的参数,
slides.paginator.click
稍后将提供适当的参数。“…我如何知道click处理程序将提供这样的事件”。通过阅读API文档。在中,您将看到:
.click(handler(eventObject))
这是对
.click()
方法签名的描述。它表明它希望接收一个函数,调用时eventObject将传递给该函数。那么,我如何知道我可以引用的eventObject中传递的是什么呢?我注意到
e.preventDefault(),我知道这会阻止默认行为的发生。现在我想起来了,可能就这样了。cehck查看eventObject的文档您可以看到可以调用它的值和方法,您可以使用浏览器检查器来查看e对象以更好地理解它。EP,刚才也遇到了这个问题。你的答案正是我想要的。谢谢你的帮助!