使用Javascript(没有jquery)触发Anchor链接上的链接?

时间:2012-07-26 15:35:00

标签: javascript

是否可以通过javascript触发锚点链接上的点击(不是Jquery - 长篇故事!)。

我们希望将一个锚链接的id传递给一个触发点击的函数,但不知道如何在没有jquery的情况下触发点击!

由于

1 个答案:

答案 0 :(得分:2)

在某些浏览器中,您可以执行document.getElementById(myelement).click()之类的操作(我很确定这只是IE的情况,但它可以提供更多)。

由于它是您要点击的<a>标记,因此可以非常轻松地模拟其默认点击事件:

function clickLink(id) {
    var tag = document.getElementById(id);
    if( tag.onclick) {
        var def = tag.onclick();
        if( !def) return false; // event cancelled by handler
    }
    window.location.href = tag.getAttribute("href");
}

请注意,这不会考虑使用addEventListener添加的事件或除.onclick属性和onClick属性之外的任何其他事件,并且它不会打开新窗口/如果用户按Ctrl +单击或MMB点击,则选项卡。