# Help with OSX style navigation

**URL:** <https://forum.kirupa.com/t/help-with-osx-style-navigation/318671>\
**Category:** flash\
**Created:** [January 26, 2011, 10:55pm UTC](https://forum.kirupa.com/t/help-with-osx-style-navigation/318671 "2011-01-26T22:55:16Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![tobiasfunke](https://avatars.discourse-cdn.com/v4/letter/t/eada6e/32.png) [@tobiasfunke](https://forum.kirupa.com/u/tobiasfunke)\
**Post date:** [January 26, 2011, 10:55pm UTC](https://forum.kirupa.com/t/help-with-osx-style-navigation/318671/1 "2011-01-26T22:55:16Z")

</div>

Building an OSX-style dock for navigation on this website. Unfortunately, the icons are scaling to 300% or so, and I can’t figure out how to get them to scale to like, 110% max… Any help would be appreciated, thanks!

Here is the swf file - [http://evolutionpresents.com/contour/Contour.swf](http://evolutionpresents.com/contour/Contour.swf)  
Here is the fla file - [http://evolutionpresents.com/contour/Contour.fla](http://evolutionpresents.com/contour/Contour.fla)

Here is the code on the menu:

onClipEvent (load) {  
function checkOffset (coffset) {  
if (coffset\<-76) {  
coffset = -76;  
} else if (coffset\>76) {  
coffset = 76;  
}  
return coffset;  
}  
function setScale (soffset) {  
return 100\*(3-(2\*(Math.abs(soffset)/76)));  
}  
}

onClipEvent (mouseMove) {  
// Get cursor x and y coordinates  
y = getProperty("\_root.navbar.drag", \_y);  
x = getProperty("\_root.navbar.drag", \_x);  
// Find cursor offset for each icon based on icon’s starting location  
navhomeOffset = x+399;  
navaboutOffset = x+239;  
navservicesOffset = x+79;  
navappointmentsOffset = x-79;  
navlocationOffset = x-239;  
navcontactOffset = x-399;

// If cursor is inside menu  
if (y\>=-75 and y\<=75 and x\>=-500 and x\<=500) {  
// Make sure the offsets are within acceptable limits  
navhomeOffset = checkOffset(navhomeOffset);  
navaboutOffset = checkOffset(navaboutOffset);  
navservicesOffset = checkOffset(navservicesOffset);  
navappointmentsOffset = checkOffset(navappointmentsOffset);  
navlocationOffset = checkOffset(navlocationOffset);  
navcontactOffset = checkOffset(navcontactOffset);  
// Move the Home Icon  
setProperty ("\_root.navbar.navhome", \_x, -399-(navhomeOffset/8));  
setProperty ("\_root.navbar.navhome", \_xscale, setScale(navhomeOffset));  
setProperty ("\_root.navbar.navhome", \_yscale, setScale(navhomeOffset));  
// Move the About Icon  
setProperty ("\_root.navbar.navabout", \_x, -239-(navaboutOffset/8));  
setProperty ("\_root.navbar.navabout", \_xscale, setScale(navaboutOffset));  
setProperty ("\_root.navbar.navabout", \_yscale, setScale(navaboutOffset));  
// Move the Services Icon  
setProperty ("\_root.navbar.navservices", \_x, -79-(navservicesOffset/8));  
setProperty ("\_root.navbar.navservices", \_xscale, setScale(navservicesOffset));  
setProperty ("\_root.navbar.navservices", \_yscale, setScale(navservicesOffset));  
// Move the Appointments Icon  
setProperty ("\_root.navbar.navappointments", \_x, 79-(navappointmentsOffset/8));  
setProperty ("\_root.navbar.navappointments", \_xscale, setScale(navappointmentsOffset));  
setProperty ("\_root.navbar.navappointments", \_yscale, setScale(navappointmentsOffset));  
// Move the Location Icon  
setProperty ("\_root.navbar.navlocation", \_x, 239-(navlocationOffset/8));  
setProperty ("\_root.navbar.navlocation", \_xscale, setScale(navlocationOffset));  
setProperty ("\_root.navbar.navlocation", \_yscale, setScale(navlocationOffset));  
// Move the Contact Icon  
setProperty ("\_root.navbar.navcontact", \_x, 399-(navcontactOffset/8));  
setProperty ("\_root.navbar.navcontact", \_xscale, setScale(navcontactOffset));  
setProperty ("\_root.navbar.navcontact", \_yscale, setScale(navcontactOffset));

} else {

setProperty ("\_root.navbar.navhome", \_x, -399);  
setProperty ("\_root.navbar.navhome", \_xscale, 100);  
setProperty ("\_root.navbar.navhome", \_yscale, 100);  
setProperty ("\_root.navbar.navabout", \_x, -239);  
setProperty ("\_root.navbar.navabout", \_xscale, 100);  
setProperty ("\_root.navbar.navabout", \_yscale, 100);  
setProperty ("\_root.navbar.navservices", \_x, -79);  
setProperty ("\_root.navbar.navservices", \_xscale, 100);  
setProperty ("\_root.navbar.navservices", \_yscale, 100);  
setProperty ("\_root.navbar.navappointments", \_x, 79);  
setProperty ("\_root.navbar.navappointments", \_xscale, 100);  
setProperty ("\_root.navbar.navappointments", \_yscale, 100);  
setProperty ("\_root.navbar.navlocation", \_x, 239);  
setProperty ("\_root.navbar.navlocation", \_xscale, 100);  
setProperty ("\_root.navbar.navlocation", \_yscale, 100);  
setProperty ("\_root.navbar.navcontact", \_x, 399);  
setProperty ("\_root.navbar.navcontact", \_xscale, 100);  
setProperty ("\_root.navbar.navcontact", \_yscale, 100);  
}  
}
