0

是否可以更改单击锚点后执行的 onclick javascript 函数?

例子:

<a id="myLocation" class="locator" href="#" onclick="javascript:getMyLocation();">&nbsp;&nbsp;&nbsp;&nbsp;My Location</a>

当用户单击此锚点时,他们的位置将显示在带有标记的地图上。

我希望现在将 onclick 更改为 RemoveLocation(),以便当他们再次单击锚点时,会删除他们在地图上的位置的标记。

getMyLocation() 和 RemoveLocation 已经编写好了,如果可能的话,我只需要在用户单击锚点后更改 onclick 事件。

4

2 回答 2

1

将此添加到您的getMyLocation()函数中:

document.getElementById("myLocation").onclick = RemoveLocation;

RemoveLocation()函数中:

document.getElementById("myLocation").onclick = getMyLocation;
于 2012-04-26T17:20:53.687 回答
1

是的,有可能!

您只需为该元素上的 click 事件重新分配事件处理程序。

就像是:

function getMyLocation() {

    ...

    document.getElementById("myLocation").onclick = RemoveLocation;
}


function RemoveLocation() {

    ...

    document.getElementById("myLocation").onclick = getMyLocation;
}

或者,如果您使用 jQuery,请参阅切换事件功能

于 2012-04-26T17:28:55.243 回答