changeset 1475:e8a58276ec5a

position birdzoom rectangle more precisely
author hertzhaft
date Sat, 16 Jan 2016 19:47:47 +0100
parents 6f73aa2f9d11
children f1e32e53c454
files webapp/src/main/webapp/jquery/jquery.digilib.birdseye.js
diffstat 1 files changed, 4 insertions(+), 5 deletions(-) [+]
line wrap: on
line diff
--- a/webapp/src/main/webapp/jquery/jquery.digilib.birdseye.js	Sat Jan 16 19:24:45 2016 +0100
+++ b/webapp/src/main/webapp/jquery/jquery.digilib.birdseye.js	Sat Jan 16 19:47:47 2016 +0100
@@ -226,21 +226,20 @@
         console.debug("renderBirdArea:", zoomRect, "zoomArea:", zoomArea, "$birdTrafo:", data.birdTrafo);
         // compensate for border width (different for adjustDiv and animate!)
         var bw = digilib.fn.getBorderWidth($birdZoom);
+        zoomRect.addPosition({x : -bw, y : -bw});
         if (data.settings.interactionMode === 'fullscreen') {
             // no animation for fullscreen
-            zoomRect.addPosition({x : -bw, y : -bw});
             zoomRect.adjustDiv($birdZoom);
         } else {
             // nice animation for embedded mode :-)
             // correct offsetParent because animate doesn't use offset
+            // the direct parent should be positioned! (position: relative)
             var ppos = $birdZoom.offsetParent().offset();
-            zoomRect.enlarge({x : bw*2, y : bw*2});
-            zoomRect.addPosition({x : -bw-1, y : -bw-1});
             var dest = {
                 'left' : (zoomRect.x - ppos.left) + 'px',
                 'top' : (zoomRect.y - ppos.top) + 'px',
-                'width' : zoomRect.width,
-                'height' : zoomRect.height
+                'width' : zoomRect.width + bw*2,
+                'height' : zoomRect.height + bw*2
                 };
             $birdZoom.animate(dest);
         }