Javascript-将窗口作为变量传递

问题描述 投票:0回答:1

这是我想要做的:

  • 当用户注册时,我将当前窗口存储在变量中,并向他发送电子邮件:

    <script>sessionStorage.setItem("window", window)</script> <?php sendEmail(/*...*/); ?>

  • [当用户打开电子邮件时,我从存储中获取先前保存的窗口并关闭它]

    <script>sessionStorage.getItem("window").close()<script>

这将防止浏览器在同一域上打开太多无用的窗口。

问题是我得到这样的错误:

Uncaught TypeError: sessionStorage.getItem(...).close is not a function

(如果我以前将其存储在变量中,结果相同)


此外,当我登录当前窗口时,我得到一个包含每个方法的对象:

Window {parent: Window, opener: null, top: Window, length: 0, frames: Window, …}
alert: ƒ alert()
...

当我登录存储的函数时,我得到了这个:

[object Window]

有没有办法实现我的目标?

是否可以将窗口作为简单变量传递?

我做错什么了吗?

javascript session window store session-storage
1个回答
0
投票

之所以发生这种情况,是因为sessionStorage不存储对象

© www.soinside.com 2019 - 2024. All rights reserved.