Link to home
Start Free TrialLog in
Avatar of AlexSilverman
AlexSilverman

asked on

Firefox Problem w/ Layer Visibility and Iframe

What I am trying to do is through javascript have a Flash Application that loads up outside webpages in iframes that are held in layers. This all works fine and good in IE, but dies a painful death in Firefox. I believe I am getting control of the positioning issue in Firefox (At first it was all popping up in the upper left corner), but can't seem to find/fix the issue of controlling the visibility. Basically the frames come up and disappear, can't control the scroll bar on the iframe (i assume due to the layering/visibility issues), and it "blacks out" the area where it should be when it isn't visible on top of the Flash App that is running on the bottom of the layering.

I hope that makes some amount of sense.

The code for the layers is pretty straightforward:

<div id="WorldLayer" style="position:absolute; left:85px; top:145px; width:700px; height:390px; z-index:2; visibility: hidden;">
<iframe src="" name="WorldFrame" id="WorldFrame" width="700px" marginwidth="0px" height="390px" marginheight="0px" scrolling="yes"></iframe>
</div>

The javascript for bringing it up is:

function GoCamera() {
CloseEnergy();
window.document.getElementById("WorldLayer").style.left = "85px";
window.document.getElementById("WorldLayer").style.top = "145px";
window.document.getElementById("WorldFrame").src = "address";
window.document.getElementById("WorldLayer").style.visibility = "visible";
}

Basically just trying to get this up and working in Firefox as quickly as possible. Any help is much appreciated.
Avatar of Vicker Leung
Vicker Leung
Flag of Hong Kong image

AlexSilverman

Maybe you can try to use

window.document.getElementById("WorldLayer").style.visibility = "inline";

By the way, is the problem just concerning being unable to show back the hidden layer?

Vicker
Avatar of AlexSilverman
AlexSilverman

ASKER

in firefox it seems to lack control over the visibility. so when it is supposed to be visible it is all sorts of screwed up, and it never really goes away completely from the screen when it is supposed to be there.

a flash app is running in the bottom layer, which uses javascript to reveal the layers and tell what the source for the iframe is.
Hi,

This has come up a few times. It seems that in all browsers besides IE, Flash is rather like a form control; that is to say, it doesn't like having other elements layered over it and will tend to show through, or at least ruin the rendering of what's on top.

You might want to try placing an element (like a DIV) around the Flash content so you can apply CSS invisibility to it when the other layer is over it.
can't make the flash invisible... the iframe is "inside" the flash app...
ASKER CERTIFIED SOLUTION
Avatar of Havin_it
Havin_it

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial