PDA

View Full Version : AS3 - Browser Compatibility


sinclairc5
07-20-2008, 05:15 PM
Hi all,
I have been working on a photography website made in Flash CS3 using
AS3.0. I was always under the impression that Flash was supposedly rendered the same cross browser. However my project appears to have compatibility issues, it runs fine in IE7.0....However.... Opera 9.5.1, FireFox 3 and Safari 3.1.2 all have fundamental issues with displaying my work...

check it out @ http://www.paulstamp.co.uk/samanie

If anyone has any cross browser AS3 support tips I would be extremly interested as there appears to be a limited amount of online content relating to this!

regards Paul Stamp

Sekhar
07-20-2008, 05:42 PM
Yes, I tried and the images load OK in IE7, but they don't always load in Safari 3.1.1 (Windows). I do see the pre-loader showing the progress though, so may be it's a timing/synchronization issue - i.e., in terms of how you're handling the image load events.

wvxvw
07-20-2008, 07:52 PM
Actually, I'm getting exactly the same error messages in IE and FF. And it says
TypeError: Error #1010: A term is undefined and has no properties.
Here's an explanation on why it may happen:
http://www.ericd.net/2007/09/as3-find-typeerror-1010-best-practice.html

sinclairc5
07-22-2008, 11:46 PM
thanks for the feedback guys... Ive still not isolated the code that causes this issue.

Dail
07-23-2008, 12:10 AM
No run time errors for me, using Safari 3.

Looks like there are issues with timing your loading of your images etc, as often some will only half fade in and become stuck. Maybe close currently downloading images when you request a new one.

wvxvw
07-23-2008, 08:33 AM
To get those errors you have to click through the images as fast as you can =) But, this will happen every time the image isn't fully loaded and you try to open another one.
I would rather not cancel download (because you'd need to resume it somehow if the user desides to go back to see the image which you canceled), but making the downloads go through the same custom LoadManager.
What do I mean:
Any time appliacation tries to load an image it doesnt create a new loader, but it calls some LoadManager.load() ->
LoadManager allways "knows", whether the last download has finished or not, so ->
if the last download is still in process it will stack the call and execute it after the last download in the queve finished ->
if nothing is downloaded when you call LoadManager.load() it will simply load the image.
Different performance in browsers may be caused by different limitations on number of simultaneous downloads in every browser. Eg. for IE it would be only 2.