我正在尝试设置一个书签,该书签将转到网页,输入一些登录信息,然后自动点击“登录”按钮。我的问题是,如果我只是转到页面然后按顺序输入登录信息,脚本通常在加载表单元素之前完成执行。所以,我需要一些方法让脚本等到页面加载后再将我的登录信息输入表单。到目前为止,我已经尝试了一些方法,但没有一种方法有效。
例如:
javascript:window.location = "http://www.msn.com";
window.onload=function(){alert("Page Loaded");};
警报对话框永远不会显示。我也尝试过使用一个我定期使用window.setTimeout调用的函数,但这也不起作用:
javascript:function doLogin() {
if (document.getElementsByName("login").length > 0) {
document.getElementsByName("login")[0].value = "myUserName";
}
else {
window.setTimeout(doLogin,100);
}
}
window.location="http://my.web.page";
doLogin();
再一次,永远不会输入登录信息。有谁知道我怎么能做到这一点?
答案 0 :(得分:3)
我认为问题在于,一旦你改变了窗口的位置(顺便说一句,它应该是window.location.href = 'http://www.msn.com';
,因为location
实际上是一个对象),你的其余JavaScript将被删除。
您可能需要将JavaScript放在隐藏框架(或iframe)中,并在可见框架(或iframe)中打开目标网站。然后,您可以从隐藏(i)框架中操作页面内容。
免责声明:我没有对此进行过测试,因此我不能完全确定它是否可行。