【发布时间】:2016-08-15 20:18:26
【问题描述】:
我只是想了解 .click() 方法中的参数是如何工作的。据我了解, .click() 方法将函数作为参数。
根据 jQuery API,.click() 可以接受两个参数:
([eventData], event handler)
然后事件处理函数可以带这个参数:
(Event eventObject)
这是否意味着 .click() 方法的函数参数总是期望“事件对象”被传递给它?
例如,对于下面的示例,我创建了一个随机对象,然后将其作为参数传递。 .click() 方法的函数参数似乎忽略了它是一个随机对象并继续将其用作“事件对象”。
var anObject = {
"property1" : "someproperty"
};
$(document).click(function(anObject) {
var x = anObject.pageX;
var y = anObject.pageY;
logClicks(x, y);
});
var logClicks = function(x, y) {
console.log("x: " + x + " y: " + y)
}
问题是,幕后发生了什么?为什么会这样?
编辑:
我对@987654324@ 参数以及事件处理程序如何使用它并不感到困惑。更多关于它的函数参数如何将您传递给它的任何参数转换为保存事件对象的变量。
【问题讨论】:
标签: javascript jquery events javascript-events event-handling