桌面和移动设备的jQuery事件

时间:2014-07-15 10:52:27

标签: javascript jquery html events

我正在做一个完全响应的页面,并进入了jQuery部分。我的问题是如何做涵盖移动和桌面使用的事件。我查看了jQuery 1.11.1文件,发现没有" touch"的痕迹。我认为我可以使用mousedown作为开始。什么是最佳做法?

$('.touch-me').on('mousedown, click', function () {
    console.log('touch me');
});

2 个答案:

答案 0 :(得分:1)

如果您愿意,可以这样做:

var mobile = (/iphone|ipad|ipod|android|blackberry|mini|windows\sce|palm/i.test(navigator.userAgent.toLowerCase()));
var ev = mobile ? 'touchstart' : 'click';
$('.touch-me').on(ev, function () {
   console.log('touch me');
});

答案 1 :(得分:0)

您可以使用touchstart:

$('.touch-me').on('mousedown touchstart', function () {
    console.log('touch me');
});

PS:如果您还需要点击事件,请使用它而不用逗号分隔(只需要一个空格)。