我读到,每次访问者点击图标时,让我的php / js网络应用程序不重置的唯一方法是将cookie放入localstorage中。我确实读过有同样问题的Trouble Using LocalStorage to Store Cookie in Mobile Web App,但没有明确的解决方案,或者至少我没有设法让它发挥作用。我无法弄清楚如何从那里开展业务。有没有人实现他可以显示代码的东西。 感谢
答案 0 :(得分:0)
如果通过重置意味着转到开始页面(或者更确切地说是用户选择下载应用程序的页面),这可以通过多种方式实现, cookies和localStorage 是两种方式美好而简单的方法。由于我已经在我的guestlist网络应用程序中将大量数据存储在localStorage中,因此我选择使用cookie。 以下是我的表现方式:
(N.B。我正在使用jquery cookie插件,所以如果您要复制粘贴此代码,请确保首先实现该插件。让我们开始做生意)
在每个单独的页面中,使用“当前位置”设置/覆盖cookie“userLocaltion”:
$.cookie("userLocation", "addGuest", { expires: 1 }); //persists for 1 day
同样,调用每页顶部的函数userPreviousLocaltion()并使用switch case创建函数(如下所示)。由于我的大多数子页面都在我的index.html中,因此我触发单击按钮而不是将用户发送到单独的页面:
function userPreviousLocaltion() {
var userLocation = $.cookie("userLocation");
switch (userLocation) {
case "addGuest":
$('#addGuestFooterWrap').trigger('click');
break;
case "stats":
$('#statsFooterWrap').trigger('click');
break;
case "utilities":
$('#settingsFooterWrap').trigger('click');
break;
case "bookings":
$('#bookingsFooterWrap').trigger('click');
break;
case "guestlist":
window.location = "guestlist.html";
break;
default:
console.log("do nothing, stay on first page.");
}
}
希望有所帮助!