Here's the complete code. Again, all this works fine in my swf in Flash, but 
when I upload the swf it breaks when I roll over "Home". The color changes and 
won't change back when I roll out. No other nav widget works at all. 

function nav(nname:String, nurl:String, myX:int, bgcolor:uint):void
        {
            myfont2 = 'Arial';
            mydize = 15;
            mytxtcolor = 0x000000;
            myborder = true;
            mybordercolor = 0xFFFFFF;
            myY = 170;
            myfill = 0x97f9ec;
            mynav = new TextField();
            var format:TextFormat = new TextFormat();
            format.font = myfont2;
            format.size = mysize;
            mynav.htmlText = '<a href="' + nurl + '.html">' + nname + '</a>';
            mynav.textColor = myTextColor;
            mynav.border = myborder;
            mynav.borderColor = mybordercolor;
            mynav.background=true;
            mynav.backgroundColor = bgcolor;
            mynav.autoSize = TextFieldAutoSize.LEFT;
            mynav.x = myX;
            mynav.y = myY;
            mynav.setTextFormat(format);
            var navdrop:DropShadowFilter = new DropShadowFilter();
            navdrop.color = 0x000000;
            navdrop.blurX = 3;
            navdrop.blurY = 3;
            navdrop.angle = 0;
            navdrop.alpha = 0.5;
            navdrop.distance = 3;
            var navfilters:Array = new Array(navdrop);
            mynav.filters = navFiltersArray;
            var nsprite:Sprite = new Sprite();
            addChild(nsprite);
            nsprite.name = nname;
            nsprite.addChild(mynav);
            var len:int = mynav.numLines;
            for (var i:int = 0; i < len; i++) 
            {
                var metrics:TextLineMetrics = mynav.getLineMetrics(i);
                with(nsprite.graphics)
                {
                    beginFill(myfill, 1);
                    drawRect(mynav.x, mynav.y, metrics.width + 4, 
metrics.height + metrics.descent + 1);
                    endFill();
                }
            }
            addChild(nsprite);
            nsprite.addEventListener(MouseEvent.ROLL_OVER, onRollOverHandler);
            nsprite.addEventListener(MouseEvent.ROLL_OUT, onRollOutHandler);
            nsprite.addEventListener(MouseEvent.CLICK, onClickHandler);
            nsprite.addEventListener(MouseEvent.MOUSE_DOWN, onPressHandler);
            nsprite.addEventListener(MouseEvent.MOUSE_UP, onReleaseHandler);
            nsprite.mouseChildren = false;
            nsprite.buttonMode = true;
        }
        
function onRollOverHandler(e:MouseEvent) 
{
if (e.currentTarget.name == ' Home ') 
{
nav(' Home ', 'index', 235, 0x97f9ec);
} else if (e.currentTarget.name == ' Bathroom ') {
nav(' Bathroom ', 'Bathroom', 295, 0x97F9EC);
} else if (e.currentTarget.name == ' Bedroom ') {
nav(' Bedroom ', 'Bedroom', 415, 0x97F9EC);
} else if (e.currentTarget.name == ' Dining Room ') {
nav(' Dining Room ', 'Dining_Room', 485, 0x97F9EC);
} else if (e.currentTarget.name == ' Forms ') {
nav(' Forms ', 'Forms', 642, 0x97F9EC);
} else if (e.currentTarget.name == ' About Us ') {
nav(' About Us ', 'About_Us', 703, 0x97F9EC);
} else if (e.currentTarget.name == ' Contact Us ') {
nav(' Contact Us ', 'Contact_Us', 782, 0x97F9EC);
}
}

function onRollOutHandler(e:MouseEvent)
{
if (e.currentTarget.name == ' Home ') 
{
nav(' Home ', 'index', 235, 0x0e778a);
} else if (e.currentTarget.name == ' Bathroom ') {
nav(' Bathroom ', 'Bathroom', 295, 0x0e778a);
} else if (e.currentTarget.name == ' Bedroom ') {
nav(' Bedroom ', 'Bedroom', 415, 0x0e778a);
} else if (e.currentTarget.name == ' Dining Room ') {
nav(' Dining Room ', 'Dining_Room', 485, 0x0e778a);
} else if (e.currentTarget.name == ' Forms ') {
nav(' Forms ', 'Forms', 642, 0x0e778a);
} else if (e.currentTarget.name == ' About Us ') {
nav(' About Us ', 'About_Us', 703, 0x0e778a);
} else if (e.currentTarget.name == ' Contact Us ') {
nav(' Contact Us ', 'Contact_Us', 782, 0x0e778a);
}
}

function onClickHandler(e:MouseEvent)
{
mynav.textColor = 0x000000;
mynav.borderColor = 0xFFFFFF;
}

function onPressHandler(e:MouseEvent)
{
if (e.currentTarget.name == ' Home ') 
{
nav(' Home ', 'index', 235, 0xffffff);
} else if (e.currentTarget.name == ' Bathroom ') {
nav(' Bathroom ', 'Bathroom', 295, 0xffffff);
} else if (e.currentTarget.name == ' Bedroom ') {
nav(' Bedroom ', 'Bedroom', 415, 0xffffff);
} else if (e.currentTarget.name == ' Dining Room ') {
nav(' Dining Room ', 'Dining_Room', 485, 0xffffff);
} else if (e.currentTarget.name == ' Forms ') {
nav(' Forms ', 'Forms', 642, 0xffffff);
} else if (e.currentTarget.name == ' About Us ') {
nav(' About Us ', 'About_Us', 703, 0xffffff);
} else if (e.currentTarget.name == ' Contact Us ') {
nav(' Contact Us ', 'Contact_Us', 782, 0xffffff);
}
}

function onReleaseHandler(e:MouseEvent)
{
if (e.currentTarget.name == ' Home ') 
{
nav(' Home ', 'index', 235, 0x0e778a);
} else if (e.currentTarget.name == ' Bathroom ') {
nav(' Bathroom ', 'Bathroom', 295, 0x0e778a);
} else if (e.currentTarget.name == ' Bedroom ') {
nav(' Bedroom ', 'Bedroom', 415, 0x0e778a);
} else if (e.currentTarget.name == ' Dining Room ') {
nav(' Dining Room ', 'Dining_Room', 485, 0x0e778a);
} else if (e.currentTarget.name == ' Forms ') {
nav(' Forms ', 'Forms', 642, 0x0e778a);
} else if (e.currentTarget.name == ' About Us ') {
nav(' About Us ', 'About_Us', 703, 0x0e778a);
} else if (e.currentTarget.name == ' Contact Us ') {
nav(' Contact Us ', 'Contact_Us', 782, 0x0e778a);
}
}

Thanks,
John


      
_______________________________________________
Flashcoders mailing list
[email protected]
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders

Reply via email to