猿问

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

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

以下不起作用...(至少在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>


慕森卡
浏览 497回答 3
3回答

缥缈止盈

您需要apply在该元素的上下文中使用事件处理程序:var&nbsp;elem&nbsp;=&nbsp;document.getElementById("linkid");if&nbsp;(typeof&nbsp;elem.onclick&nbsp;==&nbsp;"function")&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;elem.onclick.apply(elem);}否则this将引用执行上述代码的上下文。
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答