【问题标题】:Store cookie with swipe to delete jquery mobile用滑动存储cookie以删除jquery mobile
【发布时间】:2013-12-03 03:47:56
【问题描述】:

我有一个 phonegap 应用程序,我正在使用 jquery mobile 来显示一个列表,我希望用户能够将选项滑出以隐藏它们 - 我正在使用这个:http://jquerymobile.com/demos/1.3.0/docs/examples/swipe/swipe-list.html#demo-page

如果用户要重新加载页面,我需要让应用记住用户的删除操作——我猜想需要一个 cookie,但是由于我对 JS 的了解有限,我正在努力为滑动删除功能编写一个 cookie !请帮忙!

【问题讨论】:

    标签: javascript jquery-mobile cookies cordova jquery-cookie


    【解决方案1】:

    我会使用 localStorage 来存储已删除项目对象的数组。在存储之前使用 JSON.stringify 将数组转换为字符串:

    var delItems= [];
    delItems.push({id:"1",title:"title1"});
    delItems.push({id:"2",title:"title2"});
    delItems.push({id:"3",title:"title3"});
    
    localStorage.setItem('deletedItems', JSON.stringify(delItems));
    

    从存储中检索列表:

    var delItems = JSON.parse(localStorage["deletedItems"]);
    

    这是一篇文章,其中包含扩展 localStorage 以添加 setArray 和 getArray 原型的示例:http://inflagrantedelicto.memoryspiral.com/2013/05/phonegap-saving-arrays-in-local-storage/

    【讨论】:

    • 您能否举一个使用滑动演示的源代码的示例,说明如何将数组与列表项合并? - 我猜我们会使用变量 listitem 但需要手握才能开始
    • 这是一个小提琴:jsfiddle.net/ezanker/UF47n 使用示例,当用户确认删除时,我将 TOPIC 保存到 delItems 数组和 localStorage。当表单加载时,如果 localStorage 有该变量,我会遍历列表中的每个项目,如果它的 TOPIC 在数组中,我会删除它。尝试删除一个项目,然后再次点击屏幕顶部的 RUN。在现实生活中,您可能会从 AJAX 调用或服务器端数据库等动态加载列表。在这种情况下,您需要使用使您的列表项独一无二的东西(例如 ID)。
    • 太棒了;谢谢。由于无法将数组设置回 0,我将如何创建一个函数来恢复(即删除 cookie?)?
    • 使用removeItem:localStorage.removeItem("deletedItems");,然后刷新页面。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-02-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-06-14
    相关资源
    最近更新 更多