Javascript 在单击事件时更改href属性,然后立即将其还原?

Javascript 在单击事件时更改href属性,然后立即将其还原?,javascript,events,onclick,settimeout,Javascript,Events,Onclick,Settimeout,如何在onclick事件处理程序中使用JavaScript更改link(a)元素的“href”属性,并在单击发生后恢复为原始href?因此,当第二次单击发生时,应打开原始href url 我使用setTimeout的方法如下: 在此处输入代码 不使用setTimeout可以解决此问题吗?因此,也许只需记录原始href: elem = document.getElementById("google"); elem.newhref = "http://yahoo.com" elem.originhr

如何在onclick事件处理程序中使用JavaScript更改link(a)元素的“href”属性,并在单击发生后恢复为原始href?因此,当第二次单击发生时,应打开原始href url

我使用setTimeout的方法如下:
在此处输入代码


不使用setTimeout可以解决此问题吗?

因此,也许只需记录原始href:

elem = document.getElementById("google");
elem.newhref = "http://yahoo.com"
elem.originhref = "";
elem.onclick = function () {
    if(elem.originhref){
        elem.href = elem.originhref;
        elem.onClick=null;
    }else{
        elem.originhref = elem.href;
        elem.href = elem.newhref;
    }
};

顺便说一句,我认为使用timeout是一个很好的解决方案。

事实上,我不想交替迭代它们,但在第一次点击时使用yahoo,在以后每次点击时使用原始google。闻起来像是假链接!“您想访问该链接吗?请查看广告并重试!”是的,完全正确!为了我的博客。