From: John Firebaugh Date: Fri, 7 Sep 2012 23:21:01 +0000 (-0700) Subject: Use the jQuery data() function to access HTML 5 data attributes X-Git-Tag: live~5329 X-Git-Url: https://git.openstreetmap.org/rails.git/commitdiff_plain/59a8f93bc615402cbb14d9763a0f2f17c4ad05dc Use the jQuery data() function to access HTML 5 data attributes --- diff --git a/app/views/site/_potlatch.html.erb b/app/views/site/_potlatch.html.erb index a1c637b79..d48fd799d 100644 --- a/app/views/site/_potlatch.html.erb +++ b/app/views/site/_potlatch.html.erb @@ -51,11 +51,9 @@ $(document).ready(function () { $("body").on("click", "a.set_position", function () { - var lat = parseFloat($(this).attr("data-lat")); - var lon = parseFloat($(this).attr("data-lon")); - var zoom = parseInt($(this).attr("data-zoom")); + var data = $(this).data(); - doSWF(lat, lon, zoom || 15); + doSWF(data.lat, data.lon, data.zoom || 15); }); }); diff --git a/app/views/site/_potlatch2.html.erb b/app/views/site/_potlatch2.html.erb index 73ef782b5..1d45d6223 100644 --- a/app/views/site/_potlatch2.html.erb +++ b/app/views/site/_potlatch2.html.erb @@ -72,12 +72,10 @@ $(document).ready(function () { $("body").on("click", "a.set_position", function () { - var lat = parseFloat($(this).attr("data-lat")); - var lon = parseFloat($(this).attr("data-lon")); - var zoom = parseInt($(this).attr("data-zoom")); + var data = $(this).data(); $("#potlatch").each(function () { - this.setPosition(lat, lon, Math.max(zoom || 15, 13)); + this.setPosition(data.lat, data.lon, Math.max(data.zoom || 15, 13)); }); }); }); diff --git a/app/views/site/index.html.erb b/app/views/site/index.html.erb index 8f8d8737b..657db8474 100644 --- a/app/views/site/index.html.erb +++ b/app/views/site/index.html.erb @@ -99,21 +99,15 @@ }); $("body").on("click", "a.set_position", function () { - var lat = parseFloat($(this).attr("data-lat")); - var lon = parseFloat($(this).attr("data-lon")); - var zoom = parseInt($(this).attr("data-zoom")); - var min_lon = parseFloat($(this).attr("data-min-lon")); - var min_lat = parseFloat($(this).attr("data-min-lat")); - var max_lon = parseFloat($(this).attr("data-max-lon")); - var max_lat = parseFloat($(this).attr("data-max-lat")); - var centre = new OpenLayers.LonLat(lon, lat); - - if (min_lon && min_lat && max_lon && max_lat) { - var bbox = new OpenLayers.Bounds(min_lon, min_lat, max_lon, max_lat); + var data = $(this).data(); + var centre = new OpenLayers.LonLat(data.lon, data.lat); + + if (data.minLon && data.minLat && data.maxLon && data.maxLat) { + var bbox = new OpenLayers.Bounds(data.minLon, data.minLat, data.maxLon, data.maxLat); map.zoomToExtent(proj(bbox)); } else { - setMapCenter(centre, zoom); + setMapCenter(centre, data.zoom); } if (marker) {