关于无痕模式这里就不多介绍,基本就是不留下上网浏览的记录,比如cookie、下载历史和表单历史等等。
如果搜索页面使用localstrorage保持用户的最近10条搜索记录,当浏览器调节到无痕模式时候,发现搜索页面连热搜词这种接口直出的数据都没有显示,很明显有代码错误了。一番调试发现是移动端浏览器无痕模式不支持localstorage,pc模拟器无痕模式竟然支持本地存储。

手机Safari浏览器中具体表现是:

localStorage对象仍然存在

但是setItem会报异常:QuotaExceededError

getItem和removeItem直接忽略

这也就是为什么移动端手机代码报错

于是要加一个判断支不支持本地存储的方法或者干脆提示用户关闭无痕模式。
   [ 其他 ] 运行代码    下载代码
<script>
// 判断是不是无痕模式
storageTest : function(storage) {
  if(!!storage) {
    try {
      storage.setItem("key", "value");
      storage.removeItem("key");
      return true;
    } catch(e) {
      return false;
    }
  } else {
    return false;
  }
}
</script>

代码描述:localstorage 无痕模式 报错解决方案。localstorage无痕模式下报错解决方案



451 601



用户评论
大牛,别默默的看了,快登录帮我点评一下吧!:)      登录 | 注册



×
×
51前端

注册

×
绑定手机

请绑定手机号,在继续操作

×
单次下载支付

应付金额:279

支付完成后,回到下载页面,在进行下载

官方QQ群
意见反馈
qq群

扫描上面二维码加微信群

官方QQ群

jQuery/js讨论群
群号:642649996
Css3+Html5讨论群
群号:322131262

加群请备注:从官网了解到