javascript - apple官网的登录页面不能访问表单元素
巴扎黑
巴扎黑 2017-04-11 12:56:06
0
1
571

利用Tampermonkey自动填写登录页面表单并触发提交按钮事件。
这是登录链接: Manage Your Apple Id
但是奇怪的是页面加载完毕以后无法获得表单元素

下面是代码:

// ==UserScript==
// @name         Account Sign In
// @namespace    http://tampermonkey.net/
// @version      0.1
// @description  try to take over the world!
// @author       You
// @include      https://appleid.apple.com/*
// @grant        none
// ==/UserScript==

(function() {
    'use strict';

    // Your code here...
    window.onload=function(){
        document.getElementById("appleId").value="myemail@gmail.com";
        document.getElementById("pwd").value="password";
        document.getElementById("sign-in").click();
        
    };

    setTimeout(function(){
        document.getElementById("appleId").value="myemail@gmail.com";
        document.getElementById("pwd").value="password";
        document.getElementById("sign-in").click();
    }, 5000);
})();

如上所见,试了window.onload,不好使
猜测因为表单p可能是ajax加载的,onload的时候并没有加载完,所以setTimeout等整个页面完全加载完毕再执行脚本,依然不好使。

但如果在chrome console中的话,先inspect该元素,之后就可以正常操作了

我该怎么做才能在页面加载完毕访问这些表单元素呢?

巴扎黑
巴扎黑

reply all(1)
黄舟

遇到过这个问题,好像是表单用的iframe,跨域了,用的自动化测试工具selenium完美解决登录及后续问题

Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
About us Disclaimer Sitemap
php.cn:Public welfare online PHP training,Help PHP learners grow quickly!