]> git.openstreetmap.org Git - rails.git/blobdiff - app/assets/javascripts/menu.js
Fix some issues with the new edit menu code
[rails.git] / app / assets / javascripts / menu.js
index 5e2d9d97a59f10703917097ccbbaa43adabd6984..595b153986f3e102424bccec97db812eb7bde3a3 100644 (file)
@@ -23,25 +23,25 @@ function openMenu(anchor, menu, align) {
  * Setup a menu, triggered by hovering over an anchor for a given time.
  */
 function createMenu(anchorid, menuid, align) {
-  var $anchor = $("#" + anchorid),
-      $arrow = $("#" + anchorid + ' .arrow'),
-      $menu = $("#" + menuid),
-      $page = $(':not(#' + menuid + ', #' + anchorid + ')');
+  var $anchor = $("#" + anchorid);
+  var $arrow = $("#" + anchorid + " .menuicon");
+  var $menu = $("#" + menuid);
+  var $page = $(":not(#" + menuid + ", #" + anchorid + ")");
 
   function hide() {
     $menu.hide();
-    $page.unbind('click', hide);
+    $page.off("click", hide);
   }
 
   $arrow.click(function(e) {
-      e.stopPropagation();
-      e.preventDefault();
-      if ($menu.is(':visible')) {
-          $menu.hide();
-          $page.unbind('click', hide);
-      } else {
-          openMenu($anchor, $menu.show(), 'left');
-          $page.bind('click', hide);
-      }
+    e.stopPropagation();
+    e.preventDefault();
+    if ($menu.is(":visible")) {
+      $menu.hide();
+      $page.off("click", hide);
+    } else {
+      openMenu($anchor, $menu.show(), align);
+      $page.on("click", hide);
+    }
   });
 }