gpt4 book ai didi

jquery-mobile - jQuery Mobile changePage in pagebeforeshow Flicker

转载 作者:行者123 更新时间:2023-12-04 05:47:44 25 4
gpt4 key购买 nike

在我的几个 jQuery Mobile 页面中,我需要确保在允许页面显示之前设置了某些变量。因此,我在 pagebeforeshow 中检查这些变量。事件,如果它们不存在或不正确,我会调用 $.mobile.changePage(...)pagebeforeshow事件然后立即返回。

在 jQuery Mobile 1.2.1 中,这似乎工作得很好。但是,现在我使用的是 jQuery Mobile 1.3.1,我注意到一个奇怪的渲染问题。现在,当我在 pagebeforeshow 中调用 changePage 时事件,它会导致 jQuery Mobile 转换到我请求的页面,然后返回到原始页面,触发 pageshow事件,然后最后转换回我执行 changePage 的页面。

虽然不是主要问题,但会带来不便并导致不必要的转换。有没有其他人遇到过这个问题,如果有,您是否能够防止不必要的转换和事件触发?谢谢!

示例代码:

$('#ConditionalPage').on('pagebeforeshow', function () {
if (!someScopedVariable) {
$.mobile.changePage('#RegularPage');
return;
}
}

$('#ConditionalPage').on('pageshow', function () {
... \\ Code that gets fired even though pagebeforeshow called changePage.
}

最佳答案

我有同样的问题。当我将页面从一页更改为另一页时,一切正常。但是当我改回来时:

$.mobile.changePage("#frontPage");

页面在两页之间移动了几次。

通过移动我定义的一些功能解决了这个问题:
$(document).on('pagebeforeshow', '[data-role=page]', function () {...})

进入:
$(document).on('pageinit', '[data-role=page]', function () {...})

关于jquery-mobile - jQuery Mobile changePage in pagebeforeshow Flicker,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16071106/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com