有没有一种方法可以在浏览器中的窗口或选项卡打开时仅执行一次 JavaScript 代码,然后在该窗口/选项卡的整个生命周期中不再执行(即使导航离开)?
一种使用方式window.sessionStorage
像这样。
if (!window.sessionStorage.getItem("isExecuted")) {
//execute code
window.sessionStorage.setItem("isExecuted", true);
}
MDN docs https://developer.mozilla.org/en/docs/Web/API/Window/sessionStorage
sessionStorage 属性允许您访问会话存储
目的。 sessionStorage 与 Window.localStorage 类似,唯一
区别在于存储在 localStorage 中的数据没有设置过期时间,
当页面会话结束时,存储在 sessionStorage 中的数据将被清除。
只要浏览器打开并存活,页面会话就会持续
整个页面重新加载和恢复。在新选项卡或窗口中打开页面
将导致启动一个新会话,这与如何
会话 cookie 有效。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)