使用 Greasemonkey 脚本,我想将链接“收件箱”更改为“测试”,它可能在 AJAX 中。怎么做?内存
从 OP 评论更新,如下:
好吧,我是新手,有人可以编写脚本将雅虎邮件上的“收件箱”一词更改为“测试”吗?(安迪的剧本对我不起作用)
使用 Greasemonkey 脚本,我想将链接“收件箱”更改为“测试”,它可能在 AJAX 中。怎么做?内存
从 OP 评论更新,如下:
好吧,我是新手,有人可以编写脚本将雅虎邮件上的“收件箱”一词更改为“测试”吗?(安迪的剧本对我不起作用)
更新: 我只在我位于英国域的主要雅虎帐户上测试了脚本。当然,雅虎在不同的国家使用明显不同的代码。
下面的脚本已更新,可在美国域和(可能/希望)大多数雅虎英文版上运行。
“好吧,我是一个新手,有人可以编写脚本将yahoo 邮件上的“收件箱”一词更改为“测试”吗?
好吧,由于该脚本需要 60 秒来编写和 60 秒来测试,所以这里是......
/* Save this file as "YaHellFoo.user.js". Then open it (Ctrl-O) with Firefox and
let Greasemonkey install it.
*/
// ==UserScript==
// @name Dirt Simple Demo, just uses jQuery to change the "Inbox" link to "test".
// @namespace YaHell
// @include http://*.mail.yahoo.com/*
// @require http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js
// ==/UserScript==
if (window.top != window.self) //don't run on frames or iframes
return;
$(document).ready (Greasemonkey_main);
function Greasemonkey_main ()
{
$("a:contains('Inbox')").each
(
function (index)
{
var jNode = $(this);
if (jNode.text() == "Inbox")
jNode.text("test")
}
);
//-- Different countries' YaHell instances display Inbox with different code!
$("span:contains('Inbox')").each
(
function (index)
{
var jNode = $(this);
if (jNode.text() == "Inbox")
jNode.text("test")
}
);
}
好吧,greasemonkey 只是注入页面的javascript。
所以假设你知道如何使用greasemonkey,你只需要编写一小段代码来找到链接/按钮并操作它的文本(如果你没有jQuery):
document.getElementById('buttonIDName').innerHtml = 'test';
document.getElementById('buttonIDName').href = 'javascript:alert("you clicked test")';
如果您碰巧有可用的 Jquery 或类似的东西,那么您可以执行以下操作:
$('#buttonIDName').html('test').click(function(){alert('you clicked test');});
Greasemonkey 只是另一个 JS 脚本,它在页面加载后运行。