Javascript 如何将触摸事件添加到类?。。最好是通过jquery

Javascript 如何将触摸事件添加到类?。。最好是通过jquery,javascript,jquery,Javascript,Jquery,你怎么能做下面这样的事情 $('.myDivs').ontouchstart(function(){ alert('touch'); }) 我似乎能够实现触摸事件的唯一方法是使用javascript。。像这样 document.getElementById('singleDiv').addEventListener("touchstart",touchHandler, false); 然而,我想实现这个类,而不是一个id。。。因此,有没有一种方法可以像上面的例子那样使用jquery来实现呢

你怎么能做下面这样的事情

$('.myDivs').ontouchstart(function(){
alert('touch');
})
我似乎能够实现触摸事件的唯一方法是使用javascript。。像这样

document.getElementById('singleDiv').addEventListener("touchstart",touchHandler, false);
然而,我想实现这个类,而不是一个id。。。因此,有没有一种方法可以像上面的例子那样使用jquery来实现呢

我找到了答案:

$('.myDivs').bind('touchstart', function (event) { alert('touch');});

只需选择类而不是id即可:

    document.getElementsByClassName('myClass').addEventListener(...);
请注意,此选择器在IE中不起作用。对于IE,您可以使用jQuery:

    $('.myClass').on("click",function(){});

从jQuery 1.4.2开始,以下内容对我来说很好:

$('.classname').live('touchstart', function(e) {  
    // Do whatever you want here...
});
或者对于jQuery的最新版本:

$('.classname').on('touchstart', function(e) {  
    // Do whatever you want here...
});

在大多数移动浏览器中,
onclick
事件不同于
ontouchstart
事件。例如,iOS会在稍有延迟后执行单击事件(浏览器需要首先检查用户是否正在执行本机操作,如滚动、缩放等)。我甚至没有考虑他需要的事件类型,我看到的问题是选择类。感谢Th0rndike,但是document.GetElementsByCassName('myClass')).addEventListener由于某种原因似乎不起作用。。。我喜欢你想象的那样。我已经为此挣扎了很久,2分钟后我找到了答案:$('.myDivs').bind('touchstart',function(event){alert('touch');});谢谢BenM我会看看的。。。我已经测试过了,只要您在回答中指定了正确版本的jquery(我没有!),这两种方法都很有效。谢谢Ben