如何使用javascript在链接上触发事件处理程序

时间:2009-11-13 04:03:02

标签: javascript

我想使用javascript点击页面中的链接。我想在没有导航的情况下在链接上触发事件处理程序。如何才能做到这一点?这必须在firefox和Internet Explorer中都能正常工作

由于

2 个答案:

答案 0 :(得分:4)

使用纯JavaScript,它取决于你如何绑定事件,如果你为元素的onclick属性分配了一个匿名函数,你可以简单地说:

var link = document.getElementById('linkId');
link.onclick();

如果您使用addEventListenerattachEvent for IE ),则应使用DOM Level 2 Standard {{3> 模拟事件}或document.createEvent for IE )。

例如:

function simulateClick(el) {
  var evt;
  if (document.createEvent) { // DOM Level 2 standard
    evt = document.createEvent("MouseEvents");
    evt.initMouseEvent("click", true, true, window,
      0, 0, 0, 0, 0, false, false, false, false, 0, null);

    el.dispatchEvent(evt);
  } else if (el.fireEvent) { // IE
    el.fireEvent('onclick');
  }
}

检查上面的示例element.fireEvent

答案 1 :(得分:2)

如果你使用jQuery ......

$('a#myLinkID').click();