2a4cbd0a60f3a7bb564a09920d390eb027b273cb larrym Tue Aug 2 12:17:27 2011 -0700 allow options.clickClipHeight to be a list; currently not used (see redmine 4781) diff --git src/hg/js/jquery.imgareaselect.js src/hg/js/jquery.imgareaselect.js index d6b3378..32be14f 100644 --- src/hg/js/jquery.imgareaselect.js +++ src/hg/js/jquery.imgareaselect.js @@ -301,34 +301,44 @@ event.preventDefault(); return false; } function startSelection(event) { adjust(); selection.x1 = selection.x2 = selX(startX = x1 = x2 = evX(event)); selection.y1 = selection.y2 = selY(startY = y1 = y2 = evY(event)); selection.width = 0; selection.height = 0; selection.event = event; - if(options.clickClipHeight != null && selection.y1 > options.clickClipHeight) { + if(options.clickClipHeight != null) { // This is necessary on IE to support clicks in an image which has map items. + if(typeof(options.clickClipHeight) == 'number') { + if(selection.y1 > options.clickClipHeight) { return false; } + } else { + for(var i = 0; i < options.clickClipHeight.length; i++) { + if(selection.y1 > options.clickClipHeight[i].top && selection.y1 < options.clickClipHeight[i].bottom) { + return false; + } + } + } + } resize = [ ]; update(); $a.add($o).show(); jQuery(document).unbind('mouseup', cancelSelection) .mousemove(selectingMouseMove); $border2.unbind('mousemove', areaMouseMove); options.onSelectStart(img, selection); jQuery(document).one('mouseup', function (event) { selection.event = event; if (options.autoHide || (selection.width * selection.height == 0))