每个iframe都有html5本地存储空间吗?

时间:2015-11-30 15:26:38

标签: javascript html5 iframe local-storage

如果我有一个页面A,它会加载几个iframe B,C,D,E,F。在每个iframe中,都有一个javascript代码,用于在本地存储中存储值color的密钥red。所有iframe本地存储是否会发生碰撞或者每个都是独立的?如果它不是独立的,有没有办法让它独立?

由于

1 个答案:

答案 0 :(得分:10)

根据the W3C

  

本地存储是按源(每个域和协议)。来自一个来源的所有页面都可以存储和访问相同的数据。

换句话说,如果iframe都驻留在同一个域中,那么它们将共享同一个本地存储实例。

可能避免冲突的一种方法是使用当前页面URL作为本地存储字典的键,如:

localStorage.setItem(window.location.pathname + "_color", "red");