0

我对 jQuery Mobile 对话框有疑问。页面何时首次加载(在 JQM 初始化之后),然后当我单击对话框按钮(打开对话框)时,对话框打开不正确。不是包含到 DOM 中,而是作为新页面打开的对话框页面。那只发生在 Safari 浏览器中。有没有人有同样的问题,或者知道如何解决它?谢谢你。

索引.html

...
    <div>
        <a href="dialog.html" data-rel="dialog" data-role="button">open dialog</a>
    </div>
...

对话框.html

    <!DOCTYPE html> 
    <html>
    <head>
        <meta charset="UTF-8">
        <title>Přidat rezervaci</title>
    <body> 
      <div data-role="page" id="reservation-form" data-close-btn="right" data-history="false">
         <!-- some next code -->
      </div>
    </body>
    </html>

jQuery 移动配置:

$.event.special.swipe.horizontalDistanceThreshold = 70;
$.event.special.swipe.scrollSupressionThreshold  = 40;
$.mobile.defaultPageTransition = 'none';
$.mobile.defaultDialogTransition = 'none';
$.mobile.useFastClick = true;

jQuery 版本:1.9.1 jQuery 移动版本:1.3.1

这是预览:

在此处输入图像描述

4

1 回答 1

0

我解决了这个问题。<audio>这是由移动设备的元素黑客造成的。

$(document).one("click", "body", function(){
 play(true);
 return false;
});

function play(first){
var a =  $("#audio");
if(a.length !== 0){
    a = a[0];
    if(first){
        a.currentTime=a.duration-.01;
        a.play();
        a.load();
    }else{
        a.play();
    }
}
return false;
}
于 2013-06-17T19:51:29.140 回答