0

我有一个 jquerymobile 代码,用于使用滑动功能更改页面。我的 mobile.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.js变量。但这不起作用,整个滑动功能都被破坏了。

关于如何将设置变量导入过渡的任何建议?

4

1 回答 1

1

您只需要将 transitionSettings 变量存储在可以在代码中的任何位置访问的全局变量中,您可以通过将任何 var 附加到 window 对象来实现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);

那也应该可以正常工作..

于 2012-09-11T15:23:49.537 回答