Javascript 单击后切换锚点的单击功能
是否可以更改单击锚点后执行的onclick javascript函数 例如:Javascript 单击后切换锚点的单击功能,javascript,Javascript,是否可以更改单击锚点后执行的onclick javascript函数 例如: <a id="myLocation" class="locator" href="#" onclick="javascript:getMyLocation();"> My Location</a> 当用户单击此定位点时,他们的位置将显示在带有标记的地图上 我希望onclick现在改为RemoveLocation(
<a id="myLocation" class="locator" href="#" onclick="javascript:getMyLocation();"> My Location</a>
当用户单击此定位点时,他们的位置将显示在带有标记的地图上
我希望onclick现在改为RemoveLocation(),这样当他们再次单击锚点时,就会删除他们在地图上的位置标记
getMyLocation()和RemoveLocation已经编写好了,如果可能的话,我只需要在用户单击定位点后更改onclick事件。将其添加到您的
getMyLocation()函数中:
document.getElementById("myLocation").onclick = RemoveLocation;
document.getElementById("myLocation").onclick = getMyLocation;
在RemoveLocation()
函数中:
document.getElementById("myLocation").onclick = RemoveLocation;
document.getElementById("myLocation").onclick = getMyLocation;
是的,这是可能的
您只需要为该元素上的click事件重新分配事件处理程序
比如:
function getMyLocation() {
...
document.getElementById("myLocation").onclick = RemoveLocation;
}
function RemoveLocation() {
...
document.getElementById("myLocation").onclick = getMyLocation;
}
或者,如果您使用的是jQuery,请参阅如果您使用的是jQuery,则可以使用$.toggle()
@NADH:这只适用于可见性。@ElliotBonneville,这是另一种切换。您可以执行$('#选择器')。切换(函数(){alert('a');},函数(){alert('b');})代码>@ElliotBonneville,噢,呜呜。正确的。但是,OP没有指定他正在使用jQuery,因此我认为这无论如何都不是一个解决方案。请注意,您正在调用函数,而不是将它们作为引用传递。这是正确的,我的错误。应该删除()
,以避免出现这种情况,编辑以更正。每个人都遇到过这种情况:PNo问题,很高兴我能提供帮助。