这段代码看不懂了
来源:6-3 事件绑定与取消-off
AXLL
2019-08-01 14:41:12
版本jq3.41
// 上面有一个button元素 $(document).ready(function () { var button = $('button'); button.on('click', function (e) { $().off(e) //为啥这样可以取消绑定? console.log(1); //仅打印一次 } ) });
4回答
同学你好!
抱歉之前回答的是有一些问题的,被$()带偏了。
(1)$()代表的是整个jquery库,但是并不能让off事件生效,而是后面的参数e使off生效了。
如果把e删掉,即可打印很多次
(2)后面同学的demo也是这样:
如果帮助到了你 欢迎采纳 祝学习愉快~
好帮手慕码
2019-08-02
同学你好!
不是的,只是在当前button绑定的点击事件里解绑click:(可以将它想成:如果不传任何元素,那么就指绑定本元素)
下一个点击事件还是可以生效
如果帮助到了你 欢迎采纳 祝学习愉快~
好帮手慕码
2019-08-01
同学你好!
没有仿照的例子,它选中的是整个jquery。$()就是jQuery(),这句话通俗理解就是:你把解绑事件off绑定在整个jQuery中啦,解绑之后jQuery里面的所有封装的都不能使用了,因此只能打印一次,也实现了解绑的效果。
这种写法并不常见,所以同学了解下即可。在使用off事件的时候前面建议写明要解绑的元素
如果帮助到了你 欢迎采纳 祝学习愉快~
好帮手慕码
2019-08-01
同学你好!
是这样的,jquery是由javascript开发的一个框架,并不是一种独立的语言,这种框架其实就是javascript的一个函数,函数名就为jquery,由于在框架中把jquery简写成了一个简单的$符号所以这个函数的使用格式就变成了$(),或者是$
这里的$()就表示jquery函数,相当于在此函数中解除绑定on("click")方法,那么on方法也不存在了,所以console.log只能打印一次。
如果帮助到了你 欢迎采纳 祝学习愉快~
相似问题