小编典典

我如何以编程方式从锚标记调用onclick()事件,同时在onclick函数中保留“ this”引用?

javascript

以下内容不起作用…(至少在Firefox document.getElementById('linkid').click()中不起作用:不是函数)

<script type="text/javascript">
    function doOnClick() {
        document.getElementById('linkid').click();
        //Should alert('/testlocation');
    }
</script>
<a id="linkid" href="/testlocation" onclick="alert(this.href);">Testlink</a>

阅读 397

收藏
2020-05-01

共1个答案

小编典典

您需要apply在该元素的上下文中使用事件处理程序:

var elem = document.getElementById("linkid");
if (typeof elem.onclick == "function") {
    elem.onclick.apply(elem);
}

否则this将引用执行以上代码的上下文。

2020-05-01