1

我正在开发一个有多个页面的 JQuerymobile 网站。如果显示其中一个页面(id="shown"),我希望在延迟 6 秒后重定向到另一个页面(id=#redirected")。

在我的代码中,注释行适用于此,但问题是如果用户同时更改到另一个 sup 页面,它甚至会重定向到 #redirected 页面。所以我需要的是这里的“如果没有显示其他页面”的东西。

我也尝试过使用 JQuery“changePage”(这对处理转换等很有帮助),但我不知道如何在这里实现延迟。

请看我的代码:

    $("#shown").bind("pageshow", function(e) {
    //window.setTimeout('window.location="#redirected"; ',6000);
    $.mobile.changePage("#fertig", { reverse: "false"});
4

1 回答 1

1

我为你做了一个工作 jsfiddle:http: //jsfiddle.net/zUZMx/

使用 jQuery 移动多页模板,其中包含 id 为“一”、“二”和“三”的三个页面。当导航到二时,它会启动 6 秒的超时,之后它会检查活动页面是否为“二”,如果是,则继续使用移动 changePage 将用户重定向到三(因此您可以充分利用转换)。

使用的Javascript:

$(document).delegate("#two", "pageshow", function(event) {
setTimeout(function() {
   if($.mobile.activePage.attr("id") == "two") {
        $.mobile.changePage("#three", {
            transition: "slide"
        });
    }
}, 6000);});​

如果我正确理解您的情况,“二”将更改为“显示”,“三”将更改为“重定向”。

于 2012-07-01T04:56:02.317 回答