首页 > 解决方案 > 我可以引用与我当前在 JavaScript 中使用的窗口不同的窗口吗?

问题描述

假设这个 html 文件只有一个按钮。

在 JavaScript 文件中(添加到 html 文件中),jQuery 用于给按钮一个点击功能,它执行:

window.open('some-url');

此代码在新页面中打开 url,但我希望能够对该页面执行操作,无论是关闭它还是将其滚动到某个位置。

我正在考虑这样做:

var web = window.open('some-url');
web.scrollTo(0,400);

但是,这段代码在新打开的链接中不会滚动到 400 的 y 位置。有没有一种方法可以让“窗口”不是指“这个”而是指一些 URL 窗口?

标签: javascriptjquerywindow.open

解决方案


最简洁的答案是不。

长答案是否定的,因为如果您可以在另一个网站上执行脚本,这将是一个巨大的安全漏洞。大多数网站使用跳转链接https://blog.hubspot.com/marketing/jump-link-same-page链接内容的重要部分。

基本上,该网站有一个带有 ID 属性的锚标记,并且可以在 URL 中引用该 ID 属性,例如https://www.some-ur.com/test#jump-to-id

似乎 window.open 确实支持第三个参数,您也可以在其中指定最高值https://www.w3schools.com/jsref/met_win_open.asp


推荐阅读