我正在开发一个项目,这是一个移动web应用程序。我正在使用JQuery移动。本地存储vs Web SQL
我有一个包含jQuery列表视图的页面,当用户单击列表视图上的每个项目时,与该项目相关的所有数据都会传递给一个对话框页面。我使用本地存储来传递页面之间的值。但是我想要做的是记录用户的操作并将它们显示为活动源。存储他们点击的项目,他们在打开的对话框页面上花了多长时间,并能够在新页面上显示所有这些信息。例如
您点击项
您的项目花了15秒b
等
所以将本地存储是很好的这样或或WEB SQL?
我还注意到WeB SQL不再被主动维护? http://www.w3.org/TR/webdatabase/ 这是否意味着它将被弃用?
本地存储例如:
每个项目是一个JSON对象,我需要通过整个对象在一个新的页面来查看它,所以我有:
function addPostToLocalStorage(YTfeeditems){
$(".item").on('click', function() {
var i = $('.item').index(this);
console.log(i);
var Viditem = YTfeeditems[i];
console.log(Viditem);
localStorage['youtubeclickedPost'] = JSON.stringify(Viditem);
storedItem = localStorage['youtubeclickedPost'];
retrievPostFromLocalStorage();
}
});
function retrievPostFromLocalStorage(){
var retrievedStringItem = localStorage.getItem(['youtubeclickedPost']);
var convertedPost = JSON.parse(retrievedStringItem);
showDetailedPost(convertedPost);
}
被点击的项目时,我会想存储视频的ID,记录点击的时间,记录ytfullviewpage打开的时间以及在该页面记录中如果点击“竖起大拇指”图像或单击“拇指向下”时添加这些记录细节提交给当地ftorage,并在新页面中检索它们以显示它们。我似乎理解这样做的本地存储方法。我已经粘贴了我的javascript这个here
这可能会给你一个更好的主意。
本地存储(如果可用)对此非常理想。它很容易使用,而且您不需要查找任何类型的查询语言,因此SQL(任何类型的)只会过度。 – Archer
@Archer当前我使用本地存储来存储该项目,当用户点击它时,我希望能够检索用户点击过的所有项目,但每次用户点击新项目时都会覆盖该项目,所以我只能检索最后存储的项目。我是否应该为用户点击的每个项目提供不同的键?如果是的话,这是如何实现的,因为我正在循环一个列表? :s – Dot
您可以存储保存所有项目信息的对象。只需检索对象,写入新信息并再次保存。如果您举例说明您希望每次点击存储什么样的信息,那么我会为您做一个示例并发布答案。 – Archer