Javascript 我可以将窗口对象保存在localStorage中吗
基本上,我想用一个按钮打开一个页面,然后用另一个按钮终止该页面 我认为它将页面对象保存为文本,不管怎样Javascript 我可以将窗口对象保存在localStorage中吗,javascript,Javascript,基本上,我想用一个按钮打开一个页面,然后用另一个按钮终止该页面 我认为它将页面对象保存为文本,不管怎样 <button onClick="initiate()">open page</button> <button onClick="kill()">kill page</button> <script> function initiate() { var w=window.open("https://www.google.com/"
<button onClick="initiate()">open page</button>
<button onClick="kill()">kill page</button>
<script>
function initiate()
{
var w=window.open("https://www.google.com/");
localStorage.setItem('urlmem', w);
}
function kill()
{
a = localStorage.getItem('urlmem')
prompt(a)
a.window.close()
}
</script>
打开页面
终止页面
函数初始化()
{
var w=窗口打开(“https://www.google.com/");
setItem('urlmem',w);
}
函数kill()
{
a=localStorage.getItem('urlmem')
提示(a)
a、 window.close()
}
我可以将窗口对象保存在localStorage中吗
否。
localStorage
只能存储字符串,并且window
对象不能序列化为字符串。即使是这样,也没有API可以从字符串中重新创建窗口对象
有什么办法吗
<button onClick="initiate()">open page</button>
<button onClick="kill()">kill page</button>
<script>
function initiate()
{
var w=window.open("https://www.google.com/");
localStorage.setItem('urlmem', w);
}
function kill()
{
a = localStorage.getItem('urlmem')
prompt(a)
a.window.close()
}
</script>
看起来您根本不需要持久性存储。只需将引用保存在两个函数都可见的变量中
var w;
function initiate() {
w = window.open(...);
}
function kill() {
w.close();
}
有更好的方法来组织代码,但这应该会让您产生想法
我可以将窗口对象保存在localStorage中吗
否。
localStorage
只能存储字符串,并且window
对象不能序列化为字符串。即使是这样,也没有API可以从字符串中重新创建窗口对象
有什么办法吗
<button onClick="initiate()">open page</button>
<button onClick="kill()">kill page</button>
<script>
function initiate()
{
var w=window.open("https://www.google.com/");
localStorage.setItem('urlmem', w);
}
function kill()
{
a = localStorage.getItem('urlmem')
prompt(a)
a.window.close()
}
</script>
看起来您根本不需要持久性存储。只需将引用保存在两个函数都可见的变量中
var w;
function initiate() {
w = window.open(...);
}
function kill() {
w.close();
}
有更好的方法来组织代码,但这应该会给你一个想法。你可以将w保存在某个地方并调用.close()。你可以将w保存在某个地方并调用.close()。