Jquerymobile手机.变更页转换:someVariable

Jquerymobile mobile.Changepage transition: someVariable

本文关键字:转换 someVariable 手机 Jquerymobile      更新时间:2023-09-26

我有一个jquerymobile代码,用于使用滑动功能更改页面。我的手机。changePage看起来像这样:

$.mobile.changePage("#page"+window.now,{transition:"slide"},false,true);

我还使用localStorage来存储设置。我已经将它们加载到变量transitionSettings:

函数loadSettings(){var transitionSettings=window.localStorage.getItem("transitionsSettings");}

transitionsSettings变量可以是"slide"或"none"。

我想把这个字符串插入到我的mobile.changePage中,这样它就可以加载设置并设置正确的转换。

我尝试过{transition:transitionSettings}{transition:+transitionSettings},但都不起作用。但是,我的loadSettings()函数位于一个名为settings.js.js文件中,而我的mobile.changePage()位于slide.js中,它们都导入到index.html

我认为slide.js应该访问settings.jsvariables而没有问题。但这不起作用,整个滑动功能也因此而中断。

关于如何导入设置变量以进行转换,有什么建议吗

您只需要将transitionSettings变量存储在一个全局变量中,该变量可以在代码中的任何地方访问,您可以通过将任何var附加到窗口对象来实现javascript中的全局var,因此在您的示例中,您可以将loadSettings()函数更改为:

function loadSettings(){ var window.transitionSettings = window.localStorage.getItem("transitionsSettings");}

并在slide.js中使用,如下所示:

$.mobile.changePage("#page"+window.now, {transition: window.transitionSettings}, false, true);

那应该行得通。。

此外,你可能只需要从slide.js中获得正确的设置,比如:

$.mobile.changePage("#page"+window.now, {transition: window.localStorage.getItem("transitionsSettings")}, false, true);

这也应该很好。。