加载新页面后执行JavaScript

加载新页面后执行JavaScript,javascript,Javascript,我想用一个新的url替换当前页面url,然后在新url加载完成后执行一些javascript代码。现在这是我的代码 <!DOCTYPE html> <html> <body onload = "myFunction()"> <h1>My Title</h1> <script> function myFunction() { window.open("http://www.example.com", "_self")

我想用一个新的url替换当前页面url,然后在新url加载完成后执行一些javascript代码。现在这是我的代码

<!DOCTYPE html>
<html>
<body onload = "myFunction()">

<h1>My Title</h1>

<script>
function myFunction() {
   window.open("http://www.example.com", "_self");   
   myFunction1();
}

function myFunction1() {
   alert(location.href);
   My Code
}
</script>
</body>
</html>

这是不可能的。想象一下这对安全的影响:

window.open("http://some-bank-with-lots-of-money.com", "_self");
var trans = createTransaction();
trans.sendMoney({
    amount: 10000,
    to: "evilHackerGuy"
});
trans.execute();

如果您是页面的所有者,并且希望根据用户访问页面的方式执行特定代码,请尝试。您还可以检查此服务器端;例如,使用PHP中的
$\u服务器['HTTP\u REFERER']

唯一的方法是在新打开的页面上执行JavaScript。这是因为如果你能做到这一点,黑客可以进行JavaScript注入。

你可以将你的函数附加到你正在打开的窗口的onload事件:window.onload也许你可以解释你为什么要这样做,我们可以找到其他解决方案。@FelixKling我正在尝试实现一个表单自动填充,我将url更改为一个包含表单的页面,并使用javascript来填充表单。如果另一个页面来自与JS代码不同的域,您无论如何都不能这样做,由于您不允许访问另一个页面的DOM。@RafaelDiaz我如何将第二个函数附加到新窗口的加载中?如何将第二个函数附加到新打开的窗口page@user3803788对您必须在第二页上执行
window.onload
。我如何引用第二页的onload?这样行吗?window.open(“www.example.com”);window.onload=myFunction1()@user3803788为了做到这一点,您必须拥有第二个页面,并且必须修改在第二个页面上执行的JavaScript。不,那不行。这不会起任何作用,因为这是指加载您所在的页面,而该页面已经加载。
window.open("http://some-bank-with-lots-of-money.com", "_self");
var trans = createTransaction();
trans.sendMoney({
    amount: 10000,
    to: "evilHackerGuy"
});
trans.execute();