我有一个jquery移动应用程序,我需要重用相同的内容。我创建了html内容并且可以将它附加到页面而没有任何问题,但我需要重复使用相同的内容来跟踪每次显示时所选择的内容。
就是这样......
用户选择他们想要的服务类型。
根据该选择,我有默认次数需要显示动态内容。
我加载动态内容,然后进行选择。该选择将被存储并在以后的计算中使用。
然后,我需要重新显示相同的动态内容,只需更改标签中的文字。
用户进行另一次选择,我需要再次存储选定的值以供以后使用。
最好的方法是什么?我一直在网上寻找一些没有运气的想法 感谢
答案 0 :(得分:0)
如果在数据容器的“生命周期”期间未重新加载页面,则可以使用全局对象。最好的方法是将其附加到全局window
对象。
window.$myElementReference = $(#some-element);
如果您有多个需要全局访问的对象,您可以使用一个小类来管理存储的对象。它看起来像这样:
window.storageManager =
{
_shelf : {},
has : function(key)
{
return window.storageManager._shelf[key] ? true : false;
},
get : function(key)
{
return window.storageManager._shelf[key] || null;
},
put : function(key, value)
{
window.storageManager._shelf[key] = value;
}
};
你可以像这样使用它:
var mySettings = { foo: 'bar' };
window.storageManager.put('mySettings', mySettings); // stores the mySettings object
// somewhere completely different
var mySettings = window.storageManager.get('mySettings'); // returns mySettings object
你甚至可以在jQuery创建的DOM节点上使用它:
var $myElem = $('#elem');
window.storageManager.put('myElem, $myElem); // stores the mySettings object
var $referenceToMyElem = window.storageManager.get('myElem');
当然,在代码库的随机位置抛出DOM节点并不是很好的编码。但对于少数情况,上述代码应该会有所帮助。