将jquery悬停事件绑定到移动点击事件

时间:2014-11-14 13:03:16

标签: jquery events onclick mouseevent

我在网站上的很多不同位置都有很多悬停事件。具体来说,它们都是mouseentermouseleave个功能。现在,当在移动设备上查看时,点击事件或{ {1}}事件(我认为它们被调用)触发touch,而不是mouseenter,我如何触发函数的其他部分?这是问题的一部分。

这是典型函数的样子:

mouseleave

另一部分是,在有function hover() { $('#my_div).mouseenter(fucntion(){ $('my_selector#1',$this).show(); }).mouseleave(function(){ $('my_selector#1',$this).hide(); }); } hover(); 个事件的某些地方,还有mouse-enter-leave个事件。 (示例:click显示一个按钮[上面的示例],然后您可以单击该按钮)。 在移动设备上查看时,mouseenter事件同时会同时触发touchmouseenter。如何解决此问题,以便click touch点击mouseenter那么anothor touch会触发click

点击示例:

function click() {
  $('#my_div my_selector#1').click(function(){
    //something happens
  });
click();

1 个答案:

答案 0 :(得分:2)

我说,对于第一种情况,没有"伟大"解。 如果悬停内容阻止其他重要内容,则应更改移动设计以使悬停工作更好。

对于第二种情况,您可以使用元素可见性来切换,点击应该做什么。

例如:

function hover() {
    if($('element').is(':visiblie')){
        click();
    }else{
        $('element').show();
    }
}

function click(){
    doStuff();
}