// @grant GM_setValue
// @grant GM_getValue
// ==/UserScript==
/*global $*/
let 账号=GM_getValue("账号");
let 密码=GM_getValue("密码");
let 自动登录=GM_getValue("自动登录");
while(!账号){
账号=prompt("首次登录需要输入账号")
if(账号!=null && 账号!=""){
GM_setValue("账号",账号)
break
}
};
while(!密码){
密码=prompt("首次登录需要输入密码(仅存储在本地浏览器中)")
if(密码!=null && 密码!=""){
GM_setValue("密码",密码)
break
}
};
if(自动登录==undefined){
自动登录=confirm("是否勾选自动登录")
GM_setValue("自动登录",自动登录)
};
!function 选择账号密码登录(){
if($(".js_pwd_item").length>0){
$(".js_pwd_item").click()
!function 自动输入账号密码(){
if($("#qquin").length>0 && $("#pp").length>0 && $("#ss").length>0 && $("input[value=登录]").length>0){
$("#qquin").val(账号)
$("#pp").val(密码)
if(自动登录){
$("#ss").click()
}
$("input[value=登录]").click()
}else{
setTimeout(自动输入账号密码,100)
}
}()
}else{
setTimeout(选择账号密码登录,100)
}
}();
我之前自己写的公司QQ企业邮箱自动登录,因为是我自己用的,所以代码是随手乱写的,嵌套+嵌套不是很规范,你可以参考一下。
你的问题应该是页面元素没有全部加载就开始操作元素了
加个setTimeout或者setInterval循环判断元素是否加载然后操作元素应该就可以了