PDA

View Full Version : Wmode Transparent bugs in firefox.



Nilsy
09-29-2008, 09:52 AM
I have deveolped an online portfolio in flash that triggers the function greybox on a html page.

It all works fine apart from in firefox 3 on the mac, what happens is when the greybox is opened the flash is still visible around the edges of the greybox and has not been greyed out I have used wmode transparent as a parameter and I have also tried wmode opaque with no joy.

The flash movie is embed on the page using swf object detection script so that it is accesable to users that do not have flash installed, I don't think this has anything to do with it.

Can any one help! :confused:

jscheuer1
09-29-2008, 04:25 PM
If using object/embed tag(s), you need to use the wmode transparent attribute for the embed tag portion in order for it to work with other browsers - other than IE. Or, if using object/object, both objects must have the wmode transparent param. However, if this is platform specific to Mac and FF, meaning that FF on the PC is fine, Opera on Mac is fine, etc. - it may have to do with your script that is creating the object/embed or object/object tag. You could try using another script instead, such as:

http://home.comcast.net/~jscheuer1/side/click_to_activate_w.htm

If that takes care of the problem, it was probably something to do with faulty browser/OS detection in the script you are currently using.

If not, your basic object/object or object/embed syntax may be flawed, or it could just be a bug in FF/Mac.

At some point we very likely will need a link to your page, so if you want more help:

Please post a link to the page on your site that contains the problematic code so we can check it out.

Nilsy
09-29-2008, 06:35 PM
Here is a link to one of the sections that have used the scripts mentioned before.

http://www.schoolwebsite.co.uk/primary/primary-school-website-portfolio.htm

The problem that I am having is specific to FF 3 on the mac.

Many thanks.

jscheuer1
09-29-2008, 07:36 PM
Well, have you tried my suggestion? Looking at how your page is set up, I would guess no, because it has no object/embed tag without javascript and is therefore javascript dependant, at least for the Flash to be presented. I do notice that there is fall back non-javascript, non-Flash content that resembles the Flash content with less functionality - a nice feature.

Here's what to do (because I don't have a Mac to test on), in the FF 3 browser on Mac that you are using, make sure javascript is enabled and that the page is working as normal with only the problem you described. Next, paste this into the address bar:


javascript:document.write('<textarea>'+document.body.innerHTML+'<\/textarea>')

and hit enter. This will make the display of the page disappear from view (you can hit the back button of the browser to get back to it), and in its place, a small text field will appear in the upper left corner. Select all from that field and copy and paste it into a text editor. Search for:

embed

you will see something like so:


. . . xamples of recent websites we have designed for Nursery, Infant, Primary and Junior Schools.</p>
<p>Click on the screen-shot to learn more about the project.</p>
<div id="content_left_portfolio_colleges"><embed type="application/x-shockwave-flash" src="portfolio.swf" style="" id="colleges" name="colleges" bgcolor="#ffffff" quality="high" wmode="transparent" width="590" height="850"></div>
<script type="text/javascript">
var so = new SWFObject("portfolio.swf","colleges","590px","850px","8","#ffffff");
so.addParam("quality", "high");
so.addParam("wmode", "high");
so.addParam("wmode", "transparent");
so.write("content_left_portfolio_colleges");
</script>
<p>Interested? Then <a href="../request-a-consultatio . . .

with the embed tag highlighted in some fashion, similar to the above. Check the entire embed tag:


<embed type="application/x-shockwave-flash" src="portfolio.swf" style="" id="colleges" name="colleges" bgcolor="#ffffff" quality="high" wmode="transparent" width="590" height="850">

If it doesn't contain the wmode="transparent" attribute as the one in this example does, it is a problem with the script. If it does, it is a problem with the FF 3 browsers under a Mac OS.

Nilsy
09-30-2008, 08:14 AM
Yeah sorry I did not get chance to try the override wizard as I was a at home, I'm not too sure on how to use it either, What do I actually do with it?

With regards to the last post, the body script does not contain any embed tags this is the only code in the body script that has anything to do with the the flash


<script type="text/javascript">
var so = new SWFObject("portfolio.swf","colleges","590px","850px","8","#ffffff");
so.addParam("quality", "high");
so.addParam("wmode", "high");
so.addParam("wmode", "transparent");
so.write("content_left_portfolio_colleges");
</script>

The main reason for this is to show the html version of the portfolio if the user does not have flash, the other reason is if the flash movie is embeded on the page and it has embed tags then the page is not complient with w3c standards which is very important.

Many thanks for your help so far.

jscheuer1
09-30-2008, 08:36 AM
I was not talking about the HTML code in the body, rather what it looks like after the SWFObject script writes the tag to it. If you follow my instructions from my last post, we can see that, and then we will know whether it is the FF 3/Mac OS combo that is the problem or the SWFObject script.

Nilsy
09-30-2008, 09:19 AM
Thanks for that I just got my head round it. I have tried it and the embed tag is there with the Wmode Transparent Parameter present so this is obviously a problem in ff3 and mac.

Thank you ever so much for your help.

Kind Regards

Nils Fearons

jscheuer1
09-30-2008, 09:25 AM
That being the case, it is possible that all that need be done is to upgrade the FF 3 browser on the Mac so that it is both the latest FF 3 sub-version available, and so that it is using the latest Flash plug-in available.

If that doesn't work, it would probably be possible to either edit the SWFObject script, or write a small companion script that will skip the Flash for that page(s) if the browser is FF 3 and the OS is Mac.