Javascript 如何模仿jQuery';s触发器()?

Javascript 如何模仿jQuery';s触发器()?,javascript,Javascript,我正在写一个小脚本(忽略我在FaceBook上收到的数百个愚蠢的请求) var输入=文档 .getElementById('contentArea') .getElementsByTagName(“输入”); 对于(变量i=0,inputsLength=inputs.length;i

我正在写一个小脚本(忽略我在FaceBook上收到的数百个愚蠢的请求)

var输入=文档
.getElementById('contentArea')
.getElementsByTagName(“输入”);
对于(变量i=0,inputsLength=inputs.length;i
所以基本上我想在所有这些忽略按钮上调用click事件,剩下的就让FaceBook的AJAX来完成


如何在没有jQuery的情况下模拟单击?我在谷歌上搜索过,但没有找到答案。

我刚刚尝试了上面的代码(使用
click()
),它在我的Firefox中运行良好

所以我想答案是,像jQuery那样做

最后的代码是

var inputs = document
             .getElementById('contentArea')
             .getElementsByTagName('input');

for (var i = 0, inputsLength = inputs.length; i < inputsLength; i++) {

    if (inputs[i].name !== 'actions[reject]') {
        continue;
    }

    inputs[i].click();

}
var输入=文档
.getElementById('contentArea')
.getElementsByTagName(“输入”);
对于(变量i=0,inputsLength=inputs.length;i
(不确定是否也在其他浏览器中)

另一种在其他浏览器中也适用的方法是使用:

var输入=文档
.getElementById('contentArea')
.getElementsByTagName(“输入”);
对于(变量i=0,inputsLength=inputs.length;i

当然,人们会将其封装在函数中以使其可重用;)

+1,我将标记它为已接受,因为我学到了一些东西(
document.createEvent()
)。在本例中,我不会封装它,因为我在控制台中直接运行它,只运行了一次=}。谢谢你的回答。
var inputs = document
             .getElementById('contentArea')
             .getElementsByTagName('input');

for (var i = 0, inputsLength = inputs.length; i < inputsLength; i++) {

    if (inputs[i].name !== 'actions[reject]') {
        continue;
    }

    inputs[i].click();

}
var inputs = document
              .getElementById('contentArea')
              .getElementsByTagName('input');

for (var i = 0, inputsLength = inputs.length; i < inputsLength; i++) {

    if (inputs[i].value !== 'Ignore') {
        continue;
    }
    // maybe it is enough to create it only once before the the loop, don't know
    var evt = document.createEvent("MouseEvents");
    evt.initMouseEvent("click", true, true, window,
      0, 0, 0, 0, 0, false, false, false, false, 0, null);
    inputs[i].dispatchEvent(evt);

}