我们有一个Web应用程序,它使用Jquery blockUI打开一个弹出窗口并做一些操作。所有这些在Safari和IE 8上正常工作。问题是与Ipad。弹出窗口中的操作都没有响应。它只是停留在那个页面上。甚至关闭不工作。
我们需要添加什么吗?
这里是打开页面和点击事件关闭的代码。
我们需要添加什么吗?
这里是打开页面和点击事件关闭的代码。
<script> $(document).ready(function() { $.ajaxSetup( { cache:false }); $("#sendInviteDiv").load("invite.htm?action=view&pid="+pid); $.blockUI({ message: $('#sendInviteDiv'),centerY: 0,css: { top: ($(window).height() - 550) /2 + 'px',left: ($(window).width() - 870) /2 + 'px',width: '870px' } }); //var ua = navigator.userAgent; //var event = (ua.match(/iPad/i)) ? "touchstart" : "click"; //alert(ua); $('#closeInvite').click($.unblockUI); $('#inviteBtn').click(function() { //script to load //setPositionDetails('${formName}','inviteBtn'); }); } }); </script>
欣赏指针。
javascript已启用,并且在Ipad Safari设置中允许弹出窗口。
解决方法
我通常使用
.bind("click touchstart",function(){ });
代替:
.click(function(){ });
这样你就绑定了正确的事件。它也更快,触摸响应比点击更快比某种原因。