刷新jquery移动页面时会发生什么
what happens when i refresh a jquery mobile page
刷新JQUERY MOBILE页面时会发生什么
我使用ajax在page1上的一个名为"json"的变量中获取数据,当用户单击特定的动态生成的元素时,我将单击的元素的id存储在会话变量中,并将changePage()
存储到新的JQMpage2中,在那里我使用json.thepropertyiwant
生成列表,一切都很好,即使是后退和前进按钮也能完美工作,但如果我刷新page 2则CCD_ 3变为未定义,这是我得到的错误:
Uncaught TypeError: Cannot read property 'responseData' of undefined
我在单个html5页面模型中使用多页
编辑:
- 我使用了变量名
json
,而不是JSON
,我只是像这样键入它强调这一点,然而现在我认为这是愚蠢的 - 我也解决了我的问题。我的错误是我认为页面刷新会为我所在的页面调用
pageinit
,但它有效与普通的html页面刷新和触发器没有什么不同每次CCD_ 7,然后是我所在页面的CCD_。
有没有办法听pagerefresh
事件并覆盖其正常功能
我相信您会在某些事件中生成page2的动态内容。我认为事件是pageinit或pagecreate。这些事件只触发一次(如果ajax页面加载设置为true)。发生的情况是,在加载page1时请求数据(类似于pageinit?)当您刷新page2时,数据不在那里,因为您请求数据的事件没有触发,这是完全正常的,因为当您刷新page2时,page1与它无关。发布代码中请求数据的部分,以及为page2生成动态内容的部分,了解更多信息。
嗯。。。这里有一些问题。
-
对于初学者来说,不要使用名为"JSON"的变量。这不好——已经有一个名为JSON的全局对象用于解析和编码JSON!你可能会不小心覆盖它。
-
正如您所发现的,如果您将数据存储在javascript中的变量中,那么该变量只在当前页面的内存中。如果刷新页面,则该变量将不再在内存中。
但这实际上与jQuery Mobile无关。这就是web浏览器的工作方式——在内存中创建的javascript结构在页面刷新之间不会持久化。
通常,您需要使用localStorage或cookie自己保存数据,以便在页面刷新之间保持数据。
-
通常情况下,无论如何都不会刷新jQuery Mobile应用程序。因此,前一点通常不是太大的问题。用户刷新页面就像重新启动应用程序一样。
应用程序应在开始重新加载所需的任何数据时,即。从localStorage,从cookie,或者对重新加载你必须在中编程该逻辑
- 将jQuery.ech()方法转换为本地JavaScript抽象的最佳方法是什么
- 基于窗口宽度jquery的函数的替代方法是什么
- 什么更好?使用iframe或jQuery之类的东西在外部网站中加载HTML文件
- 在jQuery中使用$('body').html('')意味着什么
- 什么'这是加载jQuery的最佳方式
- jQuery中的状态管理是什么
- 在页面加载或点击发生之前,窗口会弹出什么?JQUERY移动
- 在self.setInterval中,jquery关键字self-referred指的是什么?jquery
- 这个插件要求回调字符串的格式是什么?(jquery ui multisearch)
- 我的网站移动版应该使用什么?jquery mobile/CS3页面媒体/通过jscript检测浏览器大小或重定向到新页面
- 在使用AJAX获取html内容后,向新元素添加监听器的正确方法是什么?(jQuery,Javascript)
- 在$(document).ready()之后调用什么jQuery事件
- $(window).调整做了什么?JQuery移动
- 使用PHP生成HTML的最佳方法是什么?JQuery
- $find('mycontrol')做了什么jquery $('#mycontrol')
- 最有效的方法是什么(jquery代码段)
- 如果我想让它在页面加载时被触发,我该放什么jQuery方法呢?
- 我应该使用什么Jquery mouseevent来获得正确的值
- 编写由JavaScript而不是纯HTML解析的链接的最佳方式是什么?(jQuery标签)
- 元素之间的区别是什么?jQuery's element.offset()