假设我有:
if(事件 X 发生在元素 A 上) 执行代码R
if(事件 Y 发生在元素 B 上) 执行代码R
在 jQuery 中,如何使用 1 个 if 语句而不是 2 个 if 语句:
if(事件 X 发生在元素 A 上)OR(事件 Y 发生在元素 B 上) 执行代码R
我一直在研究绑定(bind)方法,但未能找到解决方案。这就像谷歌的搜索功能:如果你点击“搜索”按钮,它就会执行搜索。但是,如果您在输入框中输入内容并按“回车”键,它也会执行搜索。同样,两个不同的元素(按钮和输入框),两个不同的事件(鼠标单击和按键),但相同的功能(搜索)?
最佳答案
最终代码中不会有任何 if
语句。您必须将每个事件的事件处理程序绑定(bind)到每个元素,并且事件处理程序当然可以是相同的函数:
function event_handler() {
// ...
}
$(elementA).on('eventX', event_handler);
$(elementB).on('eventY', event_handler);
我建议阅读 jQuery 教程:http://docs.jquery.com/Tutorials .
要了解有关事件处理的更多信息,请查看以下文章:http://www.quirksmode.org/js/introevents.html 。
关于javascript - 如何在 if 语句中使用多个元素、多个事件但相同的函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14140701/