]> git.openstreetmap.org Git - rails.git/blobdiff - app/assets/javascripts/index/search.js
Filter out nodes which are too far away
[rails.git] / app / assets / javascripts / index / search.js
index 6b6f3231f2b0f3fca684e3d4a93ecf7931c2d449..81b96635b5bf62af654911bf7d5fc8f5e35bc429 100644 (file)
@@ -1,11 +1,12 @@
 OSM.Search = function(map) {
   $(".search_form input[name=query]")
 OSM.Search = function(map) {
   $(".search_form input[name=query]")
-    .on("focus", function() {
-      $(".describe_location").fadeOut(100);
+    .on("input", function(e) {
+      if ($(e.target).val() == "") {
+        $(".describe_location").fadeIn(100);
+      } else {
+        $(".describe_location").fadeOut(100);
+      }
     })
     })
-    .on("blur", function() {
-      $(".describe_location").fadeIn(100);
-    });
 
   $("#sidebar_content")
     .on("click", ".search_more a", clickSearchMore)
 
   $("#sidebar_content")
     .on("click", ".search_more a", clickSearchMore)
@@ -38,6 +39,8 @@ OSM.Search = function(map) {
     // Let clicks to object browser links propagate.
     if (data.type && data.id) return;
 
     // Let clicks to object browser links propagate.
     if (data.type && data.id) return;
 
+    marker.setLatLng(center).addTo(map);
+
     e.preventDefault();
     e.stopPropagation();
   }
     e.preventDefault();
     e.stopPropagation();
   }
@@ -78,6 +81,7 @@ OSM.Search = function(map) {
     map.removeLayer(marker);
     map.removeObject();
     $(".search_form input[name=query]").val("");
     map.removeLayer(marker);
     map.removeObject();
     $(".search_form input[name=query]").val("");
+    $(".describe_location").fadeIn(100);
   };
 
   return page;
   };
 
   return page;