从Greasemonkey中删除事件处理程序

时间:2011-10-19 11:03:28

标签: javascript jquery greasemonkey

有一个页面在页面脚本中定义了一个悬停事件:

$(".post.fade").hover(function () {
    $(this).addClass("over");
},function () {
    $(this).removeClass("over");
});

我想删除该处理程序,因为它很烦人。但是,尽管$(".post.fade").unbind();在Firebug控制台内部工作,但它不是来自Greasemonekey。我确信jQuery已正确加载,因为$(".post.fade").remove():确实有效。

我认为Greasemonkey无权访问页面的事件处理程序或其他内容。我尝试过unsafeWindow,但它仍然不起作用。

有什么办法吗?

编辑:

显然,解决方案是将代码放在$(document).ready()中。不过不知道为什么。是的,仍然需要unsafeWindow。

1 个答案:

答案 0 :(得分:1)

显然,解决方案是将代码放在$(document).ready()中。不过不知道为什么。是的,仍然需要unsafeWindow。