1

我正在使用棘轮构建一个移动应用程序,到目前为止我喜欢这个工具集,但是我在使用模式作为菜单时遇到了一个问题。

这是实时索引页面

这是我正在使用的唯一自定义 js:

$(document).ready(function() {
    if ((navigator.userAgent.match(/Android/i))) {
        $('head').append('<link rel="stylesheet" href="css/ratchet-theme-android.min.css" type="text/css" />');
        var plainAddress = $("#appAddress").text().replace(/\s+/g, "+");
        var paramAddress = encodeURI(plainAddress);
        var urlAddress = ('geo:0,0+?q=' + paramAddress);
        $('#appLink').attr('href', urlAddress);

    } else {
        $('head').append('<link rel="stylesheet" href="css/ratchet-theme-ios.min.css" type="text/css" />');
        var plainAddress = $("#appAddress").text().replace(/\s+/g, "+");
        var paramAddress = encodeURI(plainAddress);
        var urlAddress = ('http://maps.apple.com/?q=' + paramAddress);
        $('#appLink').attr('href', urlAddress);
    };
});
$.get('modal/qrModal.html', function(qr) {
    $("#loadedModals").append(qr);
});
$.get('modal/menuModal.html', function(qr) {
    $("#loadedModals").append(qr);
});

其余的是来自 goratchet.com 的ratchet.js。我通过 js 拉入菜单和 qr 代码,因为它们不是每个页面都是唯一的。虽然菜单在启动时工作正常,但当第一次进行选择时,它会继续执行,加载页面并关闭模式。

在那之后它变得很挑剔。

有时模态不会加载,有时无响应,有时会加载,加载新页面但不退出模态。

这是因为我已将其导出到外部页面吗?还是有别的问题?

4

1 回答 1

1

看起来您的loadedModals容器正在被清除,并且在通过push.js.

<div id="loadedModals">
   ...
</div>

您可以通过触发回调在每次推送事件后重新加载模式。

var loadModal = function(){
    $.get('modal/qrModal.html', function(qr) {
        $("#loadedModals").append(qr);
    });
    $.get('modal/menuModal.html', function(qr) {
        $("#loadedModals").append(qr);
    });
};

loadModal();

window.addEventListener('push', loadModal);
于 2014-05-01T01:36:02.977 回答