在Javascript中模拟点击事件

时间:2014-05-02 18:56:19

标签: javascript html google-chrome mouseclick-event

我正在尝试将Chrome中的Javascript代码写入控制台,点击页面上的链接。我正在使用的代码是

document.getElementById("id_name").getElementsByTagName("a").dispatchEvent(MouseEvent.ClICK)

并且给了我这个错误:TypeError: undefined is not a function。我这样做是对的吗?什么是在HTML元素上模拟click事件的正确方法?我也试图在没有jQuery的情况下这样做。

2 个答案:

答案 0 :(得分:2)

好吧,我不能相信代码,但是当谷歌搜索这个问题的答案时,我偶然发现了一个jsFiddle,有人演示了这个:http://jsfiddle.net/roine/wyh9r/

function fire( elem, type ) {

  var evt = elem.createEvent("Events");

  evt.initEvent( type, true, true, window, 1);

  elem.dispatchEvent(evt);

}

document.addEventListener( "plop", function() {
   console.log( "Fired a synthetic click event" );
}, false );


fire( document, "plop" );

因此,您只需将“plop”替换为“click”即可模拟点击事件。

答案 1 :(得分:1)

您所要做的就是获取元素并调用onclick()方法。

document.getElementById("id_name").onclick();
相关问题