javascript – jQuery – 如何删除.submit()和.focus()事件
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了javascript – jQuery – 如何删除.submit()和.focus()事件,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1795字,纯文字阅读大概需要3分钟。
内容图文
![javascript – jQuery – 如何删除.submit()和.focus()事件](/upload/InfoBanner/zyjiaocheng/750/ab1845fc33ac41d39c5a9fc5c9f08ed9.jpg)
每次打开弹出窗口时都会调用保存这些事件的函数
我有一个功能,我需要在页面上多次调用.该函数包含一些.on(“click”,函数….事件.
为了不让我不断添加越来越多的点击事件到我在每个.on之前的相同元素(“点击”,用.off(“点击”,这是我理解的)是正确的处理方式这个?
我的功能还有以下几点:
$( “#myForm会”).提交(函数(E){…
和…
$( “#myTextArea”).重点(功能(E){…
我的问题是:
我是否需要“取消绑定”(因为缺少一个更好的词).submit和.focus函数的方式与我执行“click”函数的方式相同,以便在每次调用函数时停止这些事件乘以这些元素?
而且,如果我这样做,这样做的正确方法是什么?
非常感谢
约翰 :-)
**更新**
我已根据要求提供了更多细节.
我的页面包括由3个独立按钮启动的3个弹出窗口.弹出窗口的起点只有一个“loading.gif”.当单击每个按钮时,我测试以查看窗口中的“loading.gif”是否处于活动状态,如果是,则使用ajax请求来获取该窗口的正确HTML.
一旦我的ajax请求返回HTML,我将它附加到窗口然后调用此函数将事件绑定到相关的按钮/表单等.
如果他们然后关闭该窗口并打开其他弹出窗口之一,我需要重新调用该函数,因此要确保我不会将每个HTML元素的事件加倍.因此,我先把事件.off转回来.然后把它们放回去.
希望澄清问题背后的推理,但随时可以询问是否不清楚.我也认为谨慎地指出我是jQuery的新手(实际上是javascript),所以这当然不一定是实现此功能的最佳/唯一方式.这只是在编写代码时对我有意义的方式.
最初我有预先填充HTML但是隐藏的弹出窗口,但我发现我的页面大小非常大,我希望改善加载时间等.
解决方法:
你可以按照自己的方式行事.您还可以使用jQuery委派系统.
示例:
你有一个div(我们称之为#test)并在其中添加一些按钮.您删除按钮,再次添加它们…但您想绑定它们上的单击事件.你可以这样做 :
$('#test').on('click', 'button', function(event) {
// Do what you want. this == the clicked button
$(this).css('background-color', 'red');
});
解释:
click事件在#test上绑定,但jQuery将针对css选择器按钮测试单击的目标.这将是点击的目标(而不是#test).这样,您只需创建一次单击侦听器,并且每次创建按钮时都不必添加/删除它.
内容总结
以上是互联网集市为您收集整理的javascript – jQuery – 如何删除.submit()和.focus()事件全部内容,希望文章能够帮你解决javascript – jQuery – 如何删除.submit()和.focus()事件所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。