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