diff options
author | Nathan Kinkade <nkinkade@nkinka.de> | 2010-09-17 20:23:05 +0000 |
---|---|---|
committer | Nathan Kinkade <nkinkade@nkinka.de> | 2010-09-17 20:23:05 +0000 |
commit | 7a5de04e51daa102840a02af6b9ce8138d08c4bb (patch) | |
tree | a3f8bcb9ac961523b4835b8865c152c8835f25e7 /lib | |
parent | f96a75f2b13a0bd7a37b320aa5655f67868ca80d (diff) | |
parent | 3e1743b21fd35b9d6d540e827292f1f4f006b531 (diff) |
Pulled latest source from upstream.
Diffstat (limited to 'lib')
-rw-r--r-- | lib/gallery.common.js | 37 |
1 files changed, 22 insertions, 15 deletions
diff --git a/lib/gallery.common.js b/lib/gallery.common.js index a8b237bf..2dbd7c7c 100644 --- a/lib/gallery.common.js +++ b/lib/gallery.common.js @@ -24,8 +24,12 @@ if (container == null) { container = 'div'; } - $(this).html("<" + container + " class=\"g-valign\">" + $(this).html() + "</" + container + ">"); - var el = $(this).children(container + ".g-valign"); + var el = $(this).find(".g-valign"); + if (!el.length) { + $(this).html("<" + container + " class=\"g-valign\">" + $(this).html() + + "</" + container + ">"); + el = $(this).children(container + ".g-valign"); + } var elh = $(el).height(); var ph = $(this).height(); var nh = (ph - elh) / 2; @@ -119,29 +123,32 @@ }; // Ajax handler for replacing an image, used in Ajax thumbnail rotation - $.gallery_replace_image = function(data, thumb) { - $(thumb).attr({src: data.src, width: data.width, height: data.height}); + $.gallery_replace_image = function(data, img_selector) { + $(img_selector).attr({src: data.src, width: data.width, height: data.height}); + $(img_selector).trigger("gallery.change"); }; // Initialize context menus $.fn.gallery_context_menu = function() { if ($(".g-context-menu li").length) { - var hover_target = ".g-context-menu"; - var in_progress = 0; - $(hover_target + " *").removeAttr('title'); - $(hover_target + " ul").hide(); - $(hover_target).hover( + var hover_target = $(this).find(".g-context-menu"); + if (hover_target.attr("context_menu_initialized")) { + return; + } + var list = $(hover_target).find("ul"); + hover_target.find("*").removeAttr('title'); + list.hide(); + hover_target.hover( function() { - if (in_progress == 0) { - $(this).find("ul").slideDown("fast", function() { in_progress = 1; }); - $(this).find(".g-dialog-link").gallery_dialog(); - $(this).find(".g-ajax-link").gallery_ajax(); - } + list.stop(true, true).slideDown("fast"); + $(this).find(".g-dialog-link").gallery_dialog(); + $(this).find(".g-ajax-link").gallery_ajax(); }, function() { - $(this).find("ul").slideUp("slow", function() { in_progress = 0; }); + list.stop(true, true).slideUp("slow"); } ); + hover_target.attr("context_menu_initialized", 1); } }; |