javascript - jQuery事件绑定已存在声明函数时如何更优雅?
PHP中文网
PHP中文网 2017-04-11 13:31:40
0
4
366

在一个web页面中,尤其是复杂的单页应用,通常会有大量的事件绑定。
如果使用jQuery的话,可能是这样的:

$(".nav").on("click",function(){
    ...
})
$(".upload").on("change",function(){
    ...
})

但上面的事件使用了匿名函数绑定在页面事件多的情况下会造成代码混乱。

我说的事件绑定更优雅符合两个特征:
1、能够给原有声明函数传参
2、事件绑定时不使用上面代码中的匿名函数

比如:我有一个shareInfo函数

function shareInfo(Info){
    ...
}

事件绑定方面只使用声明函数方式(似乎无法做到传参)

$(".btn").on("click", shareInfo)

有没有类似闭包的方式能做到这样的代码优化?

PHP中文网
PHP中文网

认证0级讲师

reply all(4)
左手右手慢动作

$(".btn").on("click", dataParam,shareInfo)这个dataParam可以通过shareInfo的第一个参数event.data获得啊。

伊谢尔伦

传参的话,最简单这样不就行了吗

$(".btn").on("click", function(){
    shareInfo('aaaa');
})
伊谢尔伦

前端进阶之路:点击事件绑定

巴扎黑
$(".btn").on("click", shareInfo.bind(this, "info"));
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
About us Disclaimer Sitemap
php.cn:Public welfare online PHP training,Help PHP learners grow quickly!