diff options
Diffstat (limited to 'modules')
-rw-r--r-- | modules/organize/js/organize.js | 56 |
1 files changed, 30 insertions, 26 deletions
diff --git a/modules/organize/js/organize.js b/modules/organize/js/organize.js index 942e49e5..130c0f99 100644 --- a/modules/organize/js/organize.js +++ b/modules/organize/js/organize.js @@ -6,32 +6,30 @@ cursorAt: { left: -10, top: -10}, appendTo: "#g-organize-content-pane", helper: function(event, ui) { - var selected = $(".ui-draggable.ui-selected img"); - if (selected.length) { - var set = $('<div class="g-drag-helper"></div>') - .css({ - zIndex: 2000, - width: 80, - height: Math.ceil(selected.length / 5) * 16 - }); + var selected = $(".ui-selected"); + var set = $('<div class="g-drag-helper"></div>') + .css({ + zIndex: 2000, + width: 80, + height: Math.ceil(selected.length / 5) * 16 + }); - selected.each(function(i) { - var row = parseInt(i / 5); - var j = i - (row * 5); - var o = $(this).offset(); - var copy = $(this).clone() - .css({ - width: $(this).width(), height: $(this).height(), display: "block", - margin: 0, position: 'absolute', outline: '5px solid #fff', - left: o.left - event.pageX, top: o.top - event.pageY - }) - .appendTo(set) - .animate({ width: 10, height: 10, outlineWidth: 1, margin: 1, - left: (20 * j), top: (row * 20) }, 500); - }); - return set; - } - return null; + selected.each(function(i) { + var row = parseInt(i / 5); + var j = i - (row * 5); + var img = $("img", this); + var o = img.offset(); + var copy = img.clone() + .css({ + width: img.width(), height: img.height(), display: "block", + margin: 0, position: 'absolute', outline: '5px solid #fff', + left: o.left - event.pageX, top: o.top - event.pageY + }) + .appendTo(set) + .animate({ width: 10, height: 10, outlineWidth: 1, margin: 1, + left: (20 * j), top: (row * 20) }, 500); + }); + return set; }, start: function(event, ui) { @@ -138,6 +136,7 @@ }, grid_mouse_move_handler: function(event) { + var continue_events = true; if ($(".g-drag-helper").length) { var organizeData = $("#g-organize").data("organizeData"); var thumbGrid = $("#g-organize-microthumb-grid"); @@ -173,8 +172,13 @@ .data("drop_position", {id: $(item).attr("ref"), position: organizeData.rtl ? !before : before}); thumbGrid.append(set); + if ($.browser.msie) { + $(".g-drag-helper").offset({top: event.pageY, left: event.PageX}); + event.preventDefault(); + continue_events = false; + } } - return true; + return continue_events; }, /** |