好的,所以我有几个使用 localStorage 的页面。在第一页上,它创建了 localStorage 的第一项:
$('#id').click(function(){
localStorage.text = $(this).val();
});
这部分代码在所有浏览器中都能正常工作。
现在在下一页,我将向存储添加更多数据:
$('#someid').click(function(e) {
// stores variables in localStorage
localStorage.background = img;
localStorage.fSize = fontSize;
localStorage.text = t;
localStorage.textX = Tx;
localStorage.align = alignVal;
localStorage.rotationAngle = Deg;
window.location = 'somepage.php';
由于某些原因,这部分在 Firefox(任何版本)中不工作,但在 IE 和 Chrome 中工作得很好。
这可能是什么问题?如果改用 sessionStorage 我可以修复它吗?
谢谢。
好的。这是一个更新:我使用 localStorage 变量在第二页上填充 php 表单,然后清除存储。如果我不清除存储 - 一切正常。是否只有在将所有变量复制到表单后才清除存储?
最佳答案
我设法使用以下代码让它在 FireFox 中工作:
预览:http://barriereader.co.uk/localstoragetest/
代码:
$('#someid').on('click', function(e) {
window.localStorage.setItem('background', img);
window.localStorage.setItem('fSize', fontSize);
window.localStorage.setItem('text', t);
window.localStorage.setItem('textX', Tx);
window.localStorage.setItem('align', alignVal);
window.localStorage.setItem('rotationAngle', Deg);
window.location = 'page2.html';
});
并按顺序检索和删除:
if (window.localStorage.getItem('background')) {
var backgroundVariable = window.localStorage.getItem('background');
window.localStorage.removeItem('background');
}
关于javascript - Firefox 中的本地存储,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18974142/