Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/88.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 是否有更好的方法绑定两个事件,但仅当其中一个为真时触发_Jquery_Function - Fatal编程技术网

Jquery 是否有更好的方法绑定两个事件,但仅当其中一个为真时触发

Jquery 是否有更好的方法绑定两个事件,但仅当其中一个为真时触发,jquery,function,Jquery,Function,这就是我现在拥有的 click = false; if click $(el).on('click', 'li', {}) else $(el).on('hover', 'li', {}) 单击和悬停实际上都会触发相同的函数,是否有更简单的方法编写此函数,例如 $(el).on('click, hover', 'li' {}) 但仍然能够通过点击来控制它 您可以执行以下操作: var click = false; $(el).on((click)?'click':'h

这就是我现在拥有的

click = false;

if click
    $(el).on('click', 'li', {})
else
    $(el).on('hover', 'li', {})   
单击和悬停实际上都会触发相同的函数,是否有更简单的方法编写此函数,例如

$(el).on('click, hover', 'li' {})
但仍然能够通过点击来控制它

您可以执行以下操作:

var click = false;
$(el).on((click)?'click':'hover', 'li',function(){...})

如果函数将事件作为第一个参数(例如,
function(e){…
),则可以检查
e.type
,查看它是“hover”还是“click”,然后像第二个示例一样绑定处理程序,并检查该值是否与
click
确定的适当事件匹配