簡體   English   中英

如何將網頁加載到新窗口並將JavaScript代碼注入其中?

[英]How can I load a web page into a new window and inject JavaScript code into it?

使用JavaScript,我如何打開一個新窗口(在此過程中加載,例如http://www.google.com )並將此代碼注入/插入其正文:

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

我知道如何打開一個新窗口,但我不知道如何將腳本添加到新窗口並運行它:

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

這將違反大多數(所有?)瀏覽器為保護其用戶而實施的相同原始策略

想象一下,如果這是可能的:你可以說服用戶來到你的網站,打開一個新的窗口,比如他們的銀行網站加載到它,並注入代碼來竊取他們的憑據。 然后繼續竊取他們的錢,身份等...

不好,是嗎? 所以非常,非常高興這是不可能的。


另請參閱: 瀏覽器安全手冊中的DOM訪問的同源策略

這適用於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

你的ww var是對新窗口對象的引用。 所以ww.window.title將是你打開的窗口的標題。

如果你想操縱你的新窗口,你應該通過你的ww var來做。

最好的方法是讓您的網站(您的腳本來自的網站)充當代理並為您下載相關網址。 因此,您可以修改服務器上的響應,也可以在客戶端本地修改響應。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM