此代码在桌面浏览器中运行良好:
$(window).click(function() {...});
但是在iPad上的Safari中,它根本不会发射。这不受支持吗?当有人触摸浏览器窗口中的某个地方时,通知的正确方法是什么?
答案 0 :(得分:5)
JQuery UI支持touch
设备。 。您可以在同一组事件上绑定单击和触摸侦听器。
$(window).bind("click touchstart", function(){...});
答案 1 :(得分:4)
尝试这样
var clickOrTap = ( typeof document.body.ontouchend === "undefined" ) ? 'click' : 'touchend';
$( "body" ).on( clickOrTap, function() { ... } );
它会检查设备是否有touchend
事件,如果没有,则意味着您在桌面上,因此侦听器将等待click
。如果它定义了,那么你就是在触摸设备上,你可以听取触摸事件。