一旦用户在 Jquery Mobile 中离开页面,如何恢复默认 HTML 元素?
Posted
技术标签:
【中文标题】一旦用户在 Jquery Mobile 中离开页面,如何恢复默认 HTML 元素?【英文标题】:how to restore a default HTML element once the user leaves a page in Jquery Mobile? 【发布时间】:2012-07-08 17:59:27 【问题描述】:我有一个带有占位符内容块的页面。页面加载后,我将用一些 AJAX 内容替换默认块,这些内容要么默认加载,要么通过用户交互加载。
我正在像这样替换加载的内容:
// inside AJAX success handler
// data is JSON string sent via AJAX
// target is the element containing my default content
var makeUp = data;
target.addClass('fade out').html( makeUp ).trigger('create')
.removeClass('fade out').addClass('fade in')
这很好用,每当用户在页面上做某事时,我都可以替换内容。
但是,如果用户离开页面并在页面仍在 DOM 中时返回,我想显示默认内容。现在,最后一个 AJAX 内容是可见的。所以我正在考虑绑定到页面隐藏并从某个地方恢复默认内容。
问题: 在页面上存储默认内容的最佳方式是什么。它并不多(1 个控制组,2 个文本块),但我不愿意将它作为数据默认字符串添加到包装容器中。一定有更好的办法。
谢谢!
【问题讨论】:
【参考方案1】:根据这个CanIUse 页面,您应该能够使用HTML5 的web storage 功能来存储一些值——我正在专门研究一些可能与您相关的移动浏览器。
这些值可以是一些关键字,它们允许您检索文本块并填充占位符,或者如果它足够小,您可以自己存储和检索两个文本块。
【讨论】:
嗯。好的起点。我喜欢只存储引用并可能基于引用提取一些默认内容的想法。再说一次,为了确保它在非 Web 存储浏览器中工作,我会使用 data 或 jqmData 将此引用放在页面元素上。那么它肯定会在那里。谢谢以上是关于一旦用户在 Jquery Mobile 中离开页面,如何恢复默认 HTML 元素?的主要内容,如果未能解决你的问题,请参考以下文章