Javascript Facebook自动登录JS在控制台中工作,但在GM脚本中不工作

Javascript Facebook自动登录JS在控制台中工作,但在GM脚本中不工作,javascript,facebook,greasemonkey,autologin,Javascript,Facebook,Greasemonkey,Autologin,我正在尝试为Facebook创建一个自动登录脚本,而不是使用先前存在的脚本。当我在Firefox和Chrome的javascript控制台中运行以下代码时,用户名和密码字段都按预期填写: var username = "myemail@email.com"; var password = "password"; var f = document.getElementById("login_form"); f.elements.namedItem("email").value = username

我正在尝试为Facebook创建一个自动登录脚本,而不是使用先前存在的脚本。当我在Firefox和Chrome的javascript控制台中运行以下代码时,用户名和密码字段都按预期填写:

var username = "myemail@email.com";
var password = "password";
var f = document.getElementById("login_form");
f.elements.namedItem("email").value = username;
f.elements.namedItem("pass").value = password; 
但当我将其作为Greasemonkey脚本运行时,它们不会填写:

// ==UserScript==
// @name           Auto Login for FB
// @namespace      hamsolo474
// @description    AutoLogin 
// @include        https://www.facebook.com
// ==/UserScript==
var username = "myemail@email.com";
var password = "password";
var f = document.getElementById("login_form");
f.elements.namedItem("email").value = username;
f.elements.namedItem("pass").value = password; 
我通读了一遍,但似乎没什么帮助。这是我在其他网站上成功运行的GM脚本的派生版本,我不明白为什么它在这里不起作用,任何帮助都将不胜感激


编辑:
我还尝试了另一种方法:

var username = "myemail@email.com";
var password = "password";
document.getElementsByName("email", "input")[0].value = username;
document.getElementsByName("pass", "input")[0].value = password;
作为javascript和:

// ==UserScript==
// @name           Auto Login for FB
// @namespace      hamsolo474
// @description    AutoLogin 
// @include        https://www.facebook.com
// ==/UserScript==
var username = "myemail@email.com";
var password = "password";
document.getElementsByName("email", "input")[0].value = username;
document.getElementsByName("pass", "input")[0].value = password;

作为GM,很像我的第一个方法,它在JS控制台中对Firefox和Chrome都有效,但在GM中对两者都无效。

问题似乎在于
@include
指令设置不正确。使用:

// ==UserScript==
// @name           Auto Login for FB
// @namespace      hamsolo474
// @description    AutoLogin 
// @include        http://www.facebook.com/*
// @include        https://www.facebook.com/*
// ==/UserScript==
var username = "myemail@email.com";
var password = "password";
var f = document.getElementById("login_form");
f.elements.namedItem("email").value = username;
f.elements.namedItem("pass").value = password; 

然而:在任何代码文件中嵌入帐户信息总是一个坏主意


如果你只是想更容易进入你的Facebook帐户,那么你最好更安全地使用。

问题似乎在于
@include
指令设置不正确。使用:

// ==UserScript==
// @name           Auto Login for FB
// @namespace      hamsolo474
// @description    AutoLogin 
// @include        http://www.facebook.com/*
// @include        https://www.facebook.com/*
// ==/UserScript==
var username = "myemail@email.com";
var password = "password";
var f = document.getElementById("login_form");
f.elements.namedItem("email").value = username;
f.elements.namedItem("pass").value = password; 

然而:在任何代码文件中嵌入帐户信息总是一个坏主意


如果你只是想更轻松地进入你的Facebook帐户,那么使用它会更好、更安全。

谢谢你的帮助,是的,我正在学习如何使用greasemonkey。理解为什么我的代码不起作用对我来说比稍微快一点登录fb更重要,谢谢你的帮助,奇怪的是当我没有看到URL更改时需要星号谢谢这项工作,是的,我正在学习如何使用greasemonkey。理解为什么我的代码不起作用对我来说比稍微快一点登录fb更重要,谢谢你的帮助,奇怪的是当我没有看到URL更改时需要星号