微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用 window.addEventListener('/load', myFunction);在第二个 html 页面上?

如何解决使用 window.addEventListener('/load', myFunction);在第二个 html 页面上?

你能告诉我如何修改这个 javascript 代码吗?我想在加载第二个页面 (capture.html) 时执行它,而不是在加载第一个页面 (index.html) 时执行它:

window.addEventListener('/load',myFunction); 

它在 index.html 页面中工作正常,但我在 capture.html 页面中也需要它。我试过了:

window.addEventListener('/capture/load',myFunction);

但它不起作用。

解决方法

您无法指定要附加事件的路由(至少不是像您尝试那样在 addEventListener() API 内)。没有“/load”或“/capture/load”事件。但是您可以在处理程序中定义取决于当前路由的逻辑,如下所示:

const handler = () => {
    const {pathname} = window.location;

    if (/\/?capture(\.html?)?$/.test(pathname)) {
        // ADD YOUR CODE HERE
    }
};

window.addEventListener('load',handler);

如果需要,您甚至可以在附加事件侦听器之前执行相同的检查。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。