jquery – 篡改猴子不点击

HTML

<div id="someid">Attack ..</div>

jQuery的:

$("#someid").click(function() {
    alert("I was clicked.");
});

jsFiddle:http://jsfiddle.net/kgJKU/

Greasemonkey的:

// ==UserScript==
// @name       My Fancy New Userscript
// @namespace  http://use.i.E.your.homepage/
// @require       http://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js
// @version    0.1
// @description  enter something useful
// @match      http://jsfiddle.net/kgJKU/
// ==/UserScript==
$("#someid").trigger('click');

……但我不知道为什么它不起作用.

最佳答案 你可能必须这样做:

$(document).ready(function(){

    var clickEvent  = document.createEvent ("HTMLEvents");
    clickEvent.initEvent ("click", true, true);
    $("#someid")[0].dispatchEvent (clickEvent);

});

这是它在Firefox / Greasemonkey中的工作原理.但它似乎不适用于jsfiddle.net,但它应该适用于所有其他网站.

确保您的脚本使用与网站使用的相同的jquery版本.

点赞