我已经编写了一个简单的触摸事件代码,并且在移动设备上运行良好,但是在触摸屏笔记本电脑上无法工作。
$(document).ready(function(){
$(".navigation a").bind("touchstart",function(e){
alert('Touch start!');
});
});
我已经编写了一个简单的触摸事件代码,并且在移动设备上运行良好,但是在触摸屏笔记本电脑上无法工作。
$(document).ready(function(){
$(".navigation a").bind("touchstart",function(e){
alert('Touch start!');
});
});
可能是监听鼠标事件。您可以为您的事件添加一个变量,并检查它的功能是否能够重现触摸事件。您可以使用modernizr JavaScript库来在此任务中获得更高的准确性。
让我给你展示一个例子:
var clickEvent = undefined;
if (Modernizr.touch) {
clickEvent = "touchstart";
} else {
clickEvent = "click";
}
$(document).ready(function(){
$(".navigation a").bind(clickEvent,function(e){
alert('It works!')
});
});
var flag = false;
$thing.bind('touchstart click', function(){
if (!flag) {
flag = true;
setTimeout(function(){ flag = false; }, 100);
// do something
}
return false
});