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

时间:2012-05-25 15:43:26

标签: 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;
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; 

我通过this link阅读,但似乎没有帮助。这是我在其他网站上成功运行的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,就像我的第一种方法一样,它适用于Firefox和Chrome的JS控制台,但不适用于GM。

1 个答案:

答案 0 :(得分:1)

问题似乎是@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帐户,那么使用the Secure Login add-on会更好,更安全。

相关问题