我曾经有一个脚本使用GM_setValue()从页面存储html块,并将其加载到另一个页面上。 所以:localStorage.setItem不能存储html的字符串
var data = '
GM_setValue("test", data);
alert(GM_getValue("test", "failed"));
将提醒
最近我们搬到投票赞成jQuery和HTML5的通用API走,换成GM_setValue GM_getValue与像功能:
function $setVal(name, value){
localStorage.setItem(name, value);
return false;
}
function $getVal(name, notset){
return localStorage.getItem(name) || notset;
}
的问题是,现在它可以HTML不再存储字符串,如GM equivs可以。使用新功能后,示例脚本会提示失败。
我试过用正则表达式逃脱,并与escape()逃脱,但我没有运气。
任何人都知道该怎么办?
编辑:尴尬的事情是,这实际上似乎工作正常。只是不在我需要的范围内。我有一个文本框,简单地作为javascript提交测试,当我从那里调用该函数时,它可以工作,但是当被代码调用时会导致错误。 感谢您的帮助,但实际上并没有像我认为的那样出现问题,对不起。
+0
无法重现'变种S = '
testing'; sessionStorage.setItem('foo',s); s === sessionStorage.getItem('foo'); // true' –
+0
他使用本地存储而不是会话存储 –
+0
@VoronoiPotato它对我来说是相同的结果 –