Re: Old flash player and Javascript disabled and Firefox 3!

3 views
Skip to first unread message
Message has been deleted

Getify Solutions, Inc.

unread,
Jul 17, 2008, 10:02:19 AM7/17/08
to swfo...@googlegroups.com
On the part about having the Flash show when there is no script enabled, you
could try having the "static publishing method" calls inside a <noscript>
tag. That should only get called if they don't have JS turned on or
available.

If they do have JS available, then embedSWF can be used to "dynamically
publish", and it has a version detect and inline auto-update for users. If
they have at least 6.0.65, but not the version you want them to have, they
can be prompted to update their player inline, right inside your page, in
which case at the completion the installer will re-open the window to your
page.

So, basically, I think the only part that can't be handled directly by
swfobject's built in capabilities is if they have no JS *and* an
insufficient flash player version.

One thought is that you could have basic static HTML content (like a message
that says, "you need to update flash, click here to do it") defaulted to
showing on the page right above or below where your flash content should
show (in other words, inside the noscript tag), and so in the case of them
not having the correct version of flash, instead of you trying to have your
swf tell the page to do something (relying on javascript apparently to do
the getURL redirect), just have your SWF tell itself to be blank and display
nothing. The user will then *only* see the static HTML message instructing
them that there is flash content they cannot see and that they need to click
an HTML link to go somewhere to update.

Hope that helps jog some thinking on how to solve this for you.


--Kyle

--------------------------------------------------
From: "BenNy" <ben.c...@gmail.com>
Sent: Thursday, July 17, 2008 4:54 AM
To: "SWFObject" <swfo...@googlegroups.com>
Subject: Old flash player and Javascript disabled and Firefox 3!

>
> Ok so a nice one here that I am wondering if anyone has come across or
> indeed has a solution to. (I have been working on it for a while now)
>
> So in firefox 3 I have an old version of flash (WIN 6,0,79,0) and I
> also have decided to turn javascript off. I have a simple getURL
> within an if statement in my actionscript that will redirect to a page
> if the flash version is present.
>
> playerVersion = System.capabilities.version;
>
> if ( playerVersion == "WIN 6,0,79,0")
> {
> getURL("http://www.blah.com");
> }
>
> But with Javascript off it doesnt want to know - Javascript on it
> redirects! The above process with javascript off works in all other
> browsers!! (when did firefox become the bad guy)
>
> I am as you can see trying to make the whole swfobject and flash embed/
> detection thing as degradable and unobtrusive as possible but have hit
> this issue with firefox 3. The main aim is so that if people arrive at
> a site I have made with javascript off and a version of flash below AS
> 3.0 then rather than supplying them with a message triggered by the
> fact that javascript is off saying "sorry you have either turned js
> off or have an old version of flash" I actually let them update. This
> also means if people arrive at my site with the correct flash version
> but js off then they can still view the flash - rather than being told
> they must turn js on to view the flash movie!
>
> Anyone help or have the same issue?
> >
>

Aran Rhee

unread,
Jul 17, 2008, 8:22:44 PM7/17/08
to swfo...@googlegroups.com
As Kyle said, you will want to use the static publishing method for your
page embed if you have js turned off.

As far as your as1 code failing, have you tried adding the allowscript
access parameter to "all" or "samedomain"? This param (or lack thereof) can
cause links etc to fail to run. Make sure you are testing on a live web
server too (not just your local file system).

Also, with your detection script, you will want to split the string into an
array using split(",") and then read the minor revision number. Any flash 6
player >=65 can use express install.

Aran

Message has been deleted
Message has been deleted

BenNy

unread,
Jul 18, 2008, 9:37:26 AM7/18/08
to SWFObject
Thanks for the replies guys.

The main aim was to make sure if JavaScript was off and the player is
less than 9 that I could then perform some form of redirect with
flash.

But as mentioned in the first post if JavaScript is off
in firefox 3 there seems to be an issue with flash not working. In
all other browsers it works fine - but firefox three nothing.

I have been working on localhost but have also worked live and have
played with the allowscript param to no avail.


What I have had to reluctantly do is:

- initially hide the object via id with css

- no JavaScript you get a message saying please turn on JavaScript

- with JavaScript on and with no flash installed you get the alternate
message please install flash

- with JavaScript on and an old version (=> 6 65) you are presented
with expressinstall

- with JavaScript on and correct version of flash the flv plays

This is for a site to be finished next week and as this is my first
time with swfobject I have had to come to this reluctant hurried
compromise.
(hey the bbc site doesn’t do it so that makes me feel a little better)

The annoying thing is if someone arrives to watch video and has flash
player
9 installed but doesn’t have JavaScript on then they are told they
have to turn JavaScript on!
(this annoys me because they only need it
on as a fail safe for expressinstall) although they wont know this - I
will.
I would like to be able to detect flash version here and
redirect them if it is less than 9 but I cant do this over all
browsers so this is the fail
safe version.

It would be nice if flash could work without JavaScript over all
browsers so i can
provide a fully degradable and unobtrusive system.

as I am new to this area and I’m not to sure if this is a firefox 3
bug or not?

Getify Solutions

unread,
Jul 18, 2008, 10:02:57 AM7/18/08
to swfo...@googlegroups.com
BenNy-
Again, the idea/solution I provided originally fixes the exact holes you are
talking about. Let me try to explain it again to make it more clear:

---------
*only* for users WITH JAVASCRIPT (accomplished by placing the following in a
<script> tag):
use the SWFObject dynamic publishing method, with your version string in the
embedSWF() call, and expressinstall enabled. It should take care of the
rest.

---------
*only* for users with NO JAVASCRIPT (accomplished by placing the following
type of content inside a <noscript> tag):

You'll be able to give the user a message that they need to install or
upgrade flash, just like you want, without needing to use javascript to do
it. The user only has to read some HTML text ("you need to
install/upgrade") and click an HTML link which redirects them to Adobe's
update page.

Then, using CSS and absolute/relative positioning, use the STATIC PUBLISHING
method to position your SWF (with wmode:transparent) directly on top of the
HTML "you need to upgrade" content just described.

1. In the case where they have no flash at all, nothing would show up and of
course your "you need to upgrade" html content would be visible to the user,
no javascript required to show or make it active.

2. If there is some flash plugin present, your swf will load, and inside of
flash, it will still do the plugin version check, just like you are
currently doing. But in the event of having an insufficient version, instead
of trying to redirect like you do with a getURL (which appears to require
javascript in some browsers), just make the flash go blank/transparent/etc
(unload the root) and display nothing. This should then allow the "you need
to upgrade" HTML message to be visible from beneath it.

3. And lastly, in the case when they *do* have at least the minimum flash
version necessary (assuming you have overlaid the flash on top of that "you
need to upgrade" HTML content), the "upgrade" will get covered up/hidden by
your visible flash content.



--Kyle



--------------------------------------------------
From: "BenNy" <ben.c...@gmail.com>
Sent: Friday, July 18, 2008 8:28 AM
To: "SWFObject" <swfo...@googlegroups.com>
Subject: Re: Old flash player and Javascript disabled and Firefox 3!

>
> Thanks for the replies guys.
>
> The main aim was to make sure if JavaScript was off and the player is
> less than 9 that I could then perform some form of redirect with
> action script. But as mentioned in the first post if JavaScript is off
> in fire fox 3 there seems to be an issue with flash not working. In
> all other browsers it works fine - but fire fox three nothing.
>
> I have been working on localhost but have also tried live and have
> played with the allowscript to no avail.
>
> What I have had to reluctantly do is:
> - hide the object via id with css
> - no JavaScript you get a message saying please turn on JavaScript
> - with JavaScript on and with no flash installed you get the alternate
> message please install flash
> - with JavaScript on and an old version (=> 6 65) you are presented
> with expressinstal
> - with JavaScript on and correct version of flash the flv plays
>
> This is for a site to be finished next week and as this is my first
> time with swfobject I have had to come to this reluctant compromise.
> (hey the bbc site doesn’t do it so that makes me feel a little better)
>
> The annoying thing is if someone arrives to watch video and has player
> 9 installed but doesn’t have JavaScript on then they are told they
> have to turn JavaScript on (this annoys me because they only need it
> on as a fail safe for expressinstall) although they wont know this - I
> will. I would like to be able to detect flash version here and
> redirect if less than 9 but cant over all browsers so this is the fail
> safe version.
>
> It would be nice if flash could work without JavaScript so i can
> provide a fully degradable and unobtrusive system.
>
> as I am new to this area and I’m not to sure if this is a firefox 3
> bug or not?
>
> Also does anyone have my original post (I deleted it and am happy to
> see replies to it today) id like to put it back up for other people to
> reference if they are also having this issue
Message has been deleted
Message has been deleted
Message has been deleted

BenNy

unread,
Jul 18, 2008, 11:09:33 AM7/18/08
to SWFObject
ok I get where you are coming from but
example -
I have flash version 6 r79 installed on my browser (specifically
firefox 3) the flash file that is to be played from my site is a
flash
9 version containing an flv player
In firefox three if I try and load this page without JavaScript I get
a white flash object and nothing happens
I don’t believe unloading the root would work here?


Also wmode is sketchy in firefox 3 with flv button presses and
transparency!
Same again firefox 3 issue?

Getify Solutions

unread,
Jul 18, 2008, 11:13:59 AM7/18/08
to swfo...@googlegroups.com
There clearly are firefox3/flash bugs, and yes, many of them do center
around wmode.

Your mileage may vary depending on how complicated your SWF content is. My
solution was meant to be a generic approach to displaying SWF content (and
upgrade messages if applicable) under the different pretenses you describe,
but it may not work depending on exactly what SWF content you have in there.

I am fairly certain that firefox3-flash is still able to self-detect its
version (unless there's a corrupt plugin install), even without javascript.
The real question is what can a SWF which detects that the version is
insufficient do with itself. I wouldn't be surprised if browsers required
javascript for a SWF to be able to do a "getURL" call, so that is clearly
not a fail-safe option if you're trying to target non-JS users. The only
thing I could think of that a SWF can guarantee to do itself is hide/unload
itself. And if the SWF was published with wmode-transparent, that *should*
show through content that was placed behind it. If not, then I have no
other thoughts on how to accomplish what you're going for.

--Kyle


--------------------------------------------------
From: "BenNy" <ben.c...@gmail.com>
Sent: Friday, July 18, 2008 10:06 AM


To: "SWFObject" <swfo...@googlegroups.com>
Subject: Re: Old flash player and Javascript disabled and Firefox 3!

>
> and also wmode is sketchy in firefox 3 with flv button presses and

Message has been deleted
Message has been deleted
Message has been deleted
Message has been deleted
Message has been deleted

BenNy

unread,
Jul 19, 2008, 12:54:43 PM7/19/08
to SWFObject
After another look into this I unfortunately don’t seem to be able to
do what I want.

So taking the above advice and mixing it with what I have already done
I have done the following.

1. Used the SWFObject dynamic publishing method to populate a
container div with my flash swf.

2. Created a "JavaScript not turned on div message" to appear if
JavaScript isn’t turned on (hidden by JavaScript if it is on)

3. Using a "No flash" div within the flash container div to show up
when there is no flash present.

4. Use expressInstall to update flash if JavaScript is on and player
version is below 9


A few potentially useful things I found out and won’t forget in a
hurry :)

- wmode transparent doesn’t work using the SWFstatic publishing method
with a param in the object tag in the markup in firefox 3 (it does
work with the dynamic method)

- it seems that in firefox3 (Mozilla/5.0 (Windows; U; Windows NT 5.1;
en-GB; rv:1.9.0.1) Gecko/2008070208 Firefox/3.0.1) you cannot get an
old version of flash swf (below 9) to unload/getURL or publish dynamic
text if JavaScript is not enabled (other browsers IE 6/7/8 and opera
and safari work as intended)

Thanks for all your help guys
Reply all
Reply to author
Forward
0 new messages