Jquery - $(selector).scroll将参数传递给它的回调函数?

时间:2012-12-04 17:56:08

标签: javascript jquery scroll

我正在从javascript(Jquery)文件中读取这几行代码,我想知道那些参数“x”和“y”来自哪里。滚动事件正在关注peraphs吗?

$(window).scroll(function(x,y) {

        dosomething(withThis);
    });

感谢 卢卡

P.S。这是jquery摘录让我问这个问题Is this an elegant way to make elements fade in while scrolling?

3 个答案:

答案 0 :(得分:4)

好吧,打开Firebug控制台(或web开发工具)并粘贴此代码:

 $(window).scroll(function(x,y,z) {
    console.log(x,y,z)
 });

执行并滚动后,您将看到结果(适用于使用jQuery的网站)。

正如预期的那样,第一个参数 - 事件对象,第二个和第三个 - 未定义;

但是,您可以手动触发事件,并传递任何参数。

此处有更多信息:http://api.jquery.com/trigger/

答案 1 :(得分:2)

不,scroll event的处理程序只接受一个事件对象,而不是x,y。该代码具有误导性和错误性。如果您没有显示完整的代码,我们无法帮助您。

这与定义方法

的方法相同
function add(a,b) {
   return a + b;
}

// When called like this, b will be undefined, as is y in your example
// programmer error not caught by the compiler
add(7);

答案 2 :(得分:0)

您可以检查任何函数上的arguments变量,这样您就可以了解传入的数据。

$(window).scroll(function() {
    console.log(arguments);
});