我怎样才能加载网页到一个新的窗口,并注入JavaScript代码插入呢?(How can I loa

2019-09-20 02:13发布

使用JavaScript,我怎么能打开(装载,比方说,一个新的窗口http://www.google.com在这个过程中),并注入/插入此代码到它的身上:

<script type="text/javascript">alert(document.title);</script>

我知道如何打开一个新的窗口,但我不知道如何将脚本添加到新的窗口,并运行它:

var ww = window.open('http://www.google.com');

Answer 1:

没有 。 这将违反同源策略被大多数(所有?)浏览器中实现,以保护他们的用户。

试想一下,如果这是可能的:你可以说服用户来到你的网站,打开一个,比如说,他们的银行网站加载到一个新的窗口,并注入代码来窃取他们的凭据。 然后继续偷他们的钱,身份等..

不好,是吗? 所以,要非常非常高兴,这是不可能的。


另请参见: 相同的起源在浏览器安全手册DOM访问



Answer 2:

这个工作Firebug控制台上:

>>> var x = window.open("");
Window opened
>>> x
Window about:blank
>>> x.document
Document about:blank
>>> x.document.write("<script type='text/javascript'>alert('h1');</script>");
Alert popped up


Answer 3:

ww VAR是新的窗口对象的引用。 所以ww.window.title将是你已经打开的窗口的标题。

如果你想操纵你的新窗口,你应该通过您做ww变种。



Answer 4:

最好的办法是有你的网站(一个脚本来自)充当代理服务器和下载有问题的网址为您服务。 因此,您可以修改响应的服务器上,或在本地客户端上。



文章来源: How can I load a web page into a new window and inject JavaScript code into it?