diff --git a/ui/experiment-ribbon-navigation-mechanics-n-structure.html b/ui/experiment-ribbon-navigation-mechanics-n-structure.html
index 4c0ec54c..5443bf3b 100755
--- a/ui/experiment-ribbon-navigation-mechanics-n-structure.html
+++ b/ui/experiment-ribbon-navigation-mechanics-n-structure.html
@@ -33,7 +33,11 @@ function squareClick(){
centerSquare()
}
-function centerSquare(){
+function centerSquare(zoom){
+ // defaults...
+ if (zoom == null){
+ zoom = $('.container').css('zoom')
+ }
var ribbons = $('.ribbon')
var ribbon = $('.ribbon.current')
var squares = ribbon.children('.square')
@@ -51,13 +55,13 @@ function centerSquare(){
// relative position to container...
// XXX is there a better way to get this?
var t = rn * (h - mh/2)
- $('.container').css({'margin-top': -t + H/2 + h/2})
+ $('.container').css({'margin-top': (-t + H/zoom/2 + h/2)})
// horizontal...
alignRibbon()
}
-function alignRibbon(square, position){
+function alignRibbon(square, position, zoom){
// default values...
if(position == null){
position = 'center'
@@ -65,6 +69,10 @@ function alignRibbon(square, position){
if(square == null){
square = $('.square.current')
}
+ // defaults...
+ if (zoom == null){
+ zoom = $('.container').css('zoom')
+ }
var ribbon = square.parents('.ribbon')
@@ -81,18 +89,26 @@ function alignRibbon(square, position){
switch(position){
case 'before':
- ribbon.css({'margin-left': -l + W/2 + w})
+ ribbon.css({'margin-left': (-l + W/zoom/2 + w)})
return true
case 'center':
- ribbon.css({'margin-left': -l + W/2 + w/2})
+ ribbon.css({'margin-left': (-l + W/zoom/2 + w/2)})
return true
case 'after':
- ribbon.css({'margin-left': -l + W/2})
+ ribbon.css({'margin-left': (-l + W/zoom/2)})
return true
}
return false
}
+// XXX need to compensate for zoom-shift (container.margin-top & ribbon.margin-left)...
+function zoomIn(){
+ $('.container').css({'zoom': $('.container').css('zoom') * 2})
+}
+function zoomOut(){
+ $('.container').css({'zoom': $('.container').css('zoom') * 0.5})
+}
+
@@ -131,6 +147,8 @@ function alignRibbon(square, position){
-o-transition: all 0.5s ease;
-ms-transition: all 0.5s ease;
transition: all 0.5s ease;
+
+ zoom: 1;
}
.ribbon {
@@ -169,6 +187,13 @@ function alignRibbon(square, position){
+
+
+
+
+
+
+