+ -
当前位置:首页 → 问答吧 → 求助:事件处理bind()中函数在bind时就被调用?

求助:事件处理bind()中函数在bind时就被调用?

时间:2009-04-14

来源:互联网

我用jquery做个小插件,用bind来绑定时间处理函数, 基础代码如下:
第一步:
function bindEvent() {  
     $("#selectInit")
                .bind("click", mySelect(0));
     $("#selectPrev")
                .bind("click", mySelect(current - 1));
     …………
}
第二步:
/* 后台调用一次让bind的处理函数(mySelect())生效 */
bindEnent();
第三歩:
/*  前台在各id上触发click事件,执行 mySelect() 处理函数 */
第四步:
mySelect() 函数执行;
在mySelect()函数执行时,会调用bindEvent()函数,对各id进行事件再bind(因为此时参数有变化);


问题出现了:
不管第一次,还是第N此调用 bindEvent()函数, 各$("id").bind("click", mySelect())时为什么总会执行一次 mySelect()函数?

作者: 一路再走   发布时间: 2009-04-14

函数加()就代表执行该函数

作者: gordianyuan   发布时间: 2009-04-15

谢谢了, 凌晨还在热心帮忙, 太辛苦了

作者: 一路再走   发布时间: 2009-04-15

实际上你这样不是把这个函数绑定了,而是把函数的返回值给绑定了
就好比
alert(mySelect())一个意思

作者: shawphy   发布时间: 2009-04-15

高手啊,谢谢点拨, 茅塞顿开了。

作者: 一路再走   发布时间: 2009-04-16

相关阅读 更多