From: Tom Hughes Date: Tue, 21 Feb 2012 19:22:01 +0000 (+0000) Subject: Make sure we don't attach alert handler multiple times X-Git-Tag: live~5812 X-Git-Url: https://git.openstreetmap.org/rails.git/commitdiff_plain/bdf476d8cf0a353d66d249d4eb25bde8460a0dcf?ds=sidebyside Make sure we don't attach alert handler multiple times Before adding a "not zoomed in enough" alert handler, make sure any existing handler is removed. Fixes #17. --- diff --git a/app/assets/javascripts/site.js b/app/assets/javascripts/site.js index 0ae8d5a02..93a5127f9 100644 --- a/app/assets/javascripts/site.js +++ b/app/assets/javascripts/site.js @@ -45,12 +45,13 @@ function updatelinks(lon,lat,zoom,layers,minlon,minlat,maxlon,maxlat,objtype,obj var minzoom = match[1]; var name = link.id.replace(/anchor$/, ""); + $(link).off("click.minzoom"); + if (zoom >= minzoom) { - $(link).off("click"); $(link).attr("title", i18n("javascripts.site." + name + "_tooltip")); $(link).removeClass("disabled"); } else { - $(link).click(function () { alert(i18n("javascripts.site." + name + "_zoom_alert")); return false; }); + $(link).on("click.minzoom", function () { alert(i18n("javascripts.site." + name + "_zoom_alert")); return false; }); $(link).attr("title", i18n("javascripts.site." + name + "_disabled_tooltip")); $(link).addClass("disabled"); }