Wednesday, November 21st, 2007

SWFAddress 2.0: Deep linking for Flash and Ajax

Category: Ajax, Flash, JavaScript, Library

SWFAddress 2.0 has been released:

SWFAddress is a small, but powerful library that provides deep linking for Flash and Ajax. It’s a developer tool, allowing creation of unique virtual URLs that can point to a website section or an application state. SWFAddress enables a number of important capabilities which are missing in today’s rich web technologies including:

  • Bookmarking in a browser or social website
  • Sending links via email or instant messenger
  • Finding specific content with the major search engines
  • Utilizing browser history and reload buttons

What’s new in 2.0

  • Support for multiple Flash movies and Ajax.
  • Event listeners for ActionScript and JavaScript.
  • New SWFAddressEvent class with support for INIT and CHANGE types.
  • New unobtrusive SEO technique.
  • Support for Adobe Flash CS3.
  • Support for Flash Player 7 with the Flash/JavaScript Integration Kit.
  • Support for SWFObject 2.0, UFO and Adobe’s Active Content embedding.
  • New strict mode that adds trailing slashes by default.
  • New helper methods for link, window and popup management.
  • Ability to configure the script with query parameters.
  • The swfaddress.html is optional and not used by default.
  • Lots of new and improved Flash based samples.
  • Various optimizations and fixes.
  • API docs for ActionScript 3 and JavaScript.

There are a whole slew of samples, including Ajax specific ones.

Posted by Dion Almaer at 7:14 am

3.4 rating from 44 votes


Comments feed TrackBack URI

the SEO capabilities of SWFAddress are not true :

read the article here :
SWFAddress 2.0 & SEO Myth Busted

Comment by Frederik Van Zande — November 21, 2007

the ajax example does not “work” (ie. there is a full refresh with each click) in Opera v9.24

Comment by naterkane — November 21, 2007

Implementation looks good in Safari 3, IE 6 (kudos, can be a tricky one) and Firefox. Browser history management is a bit hack-prone, unfortunately; a library that makes it all really easy would be a good thing.

Comment by Scott Schiller — November 21, 2007

There are different ways to accomplish SEO for Flash and Ajax. SWFAddress combines it with deep linking in a way that you didn’t understand. Check these:

There was something strange, thanks! It should be fine now.

Comment by Rostislav — November 21, 2007

So long as the average search query happens to include “”

Comment by Brad — November 22, 2007

Is it so hard to believe? If I don’t use, the blogosphere will multiply the search result in an irreversible way. Check these:

Comment by Rostislav — November 22, 2007

Sadly it does not work in Google. As Google does not index URLs with a “#” in it. So it’s useless for SEO.
Why don’t you use a “?” or something?

Comment by Tad Chef — November 22, 2007

The SEO / Deep-linking sample doesn’t work in IE7 if Flash isn’t installed. You can’t navigate the HTML version of the site at all. Works fine in Firefox, though.

Any ideas on a fix, anyone?

Comment by Rossman — November 22, 2007

Like the first commenter, you just don’t get the idea. It looks like everyone from the SEO land expects some cheap tricks here, but SWFAddress is nothing like that.

I just applied some additions to the SEO sample which improve the no-Flash behavior and fix the IE issue you’re talking about. You can get the changes from the SVN or wait for the next release.

Comment by Rostislav — November 22, 2007

Interesting… I did a similar thing long time in my CMS using rewrites and a pure JS history library. Now you bring up flash, too… great!
For all those who did not get the idea: Did you REALLY expect it to work with a single include and no additional server-sided work?!? Think about how search bots work, how the web server works and you should immediately see that a client-sided script would never be enough!
The part in my CMS for SEO and non-JS-support (mobile, searchbots etc) took only some hours to implement, as it was based on the same classes that serve the data for the AJAX way. So… there’s no need to complain… go ahead and do the server-sided stuff and you will have SEO/Non-JS support on your page.

Comment by Nick — November 22, 2007

Thanks for your reply. Very helpful, I have pulled the latest files from SVN and it seems to work great.

Thanks again,

Comment by Rossman — November 22, 2007

“SEO land” doesn’t expect cheap tricks, we are trying to help!

When there is an issue I believe you owe it to the community own up to it and not try to sweep it under the rug by not mentioning it. Pretending there is no issue looks like a cheap trick. markets Blitz as if it were a success while at the same time Mark Berghausen (Bergy) of Google’s Search Quality Team and author of Google’s “Best uses of Flash” pointed out the anchor issue on Blitz’s website months ago.

I still don’t see any mention of an #anchor issue in the SEO sample and there is still an issue. Not telling others about an issue looks like a cheap trick.

Bottom Line:
It’s not the link in the page designed for bots that matters most. Search engines also determine ranking and relevancy by inbound links and their URLs. PageRank the secret sauce of Google is all about inbound links. Inbound links are mostly the links users use, see and post to their blogs. Users use the #anchor URL version to post in their blogs with SWFAdress and Google ignores #anchors.

Again, user sees:

posts the link on his blog and Google sees:

As you can see, the content is not the same. That is a problem!

The example using an advanced operator like “site:” is deceptive to say the least because typical users don’t use advanced operators. Misrepresenting an advanced query as a typical user query looks like a cheap trick and is totally manipulating results. I don’t mean to sound harsh but if you want to use advanced operators why not point out that Google indexes Flash on it’s own and without SWFAddress by using a filetype query?

Now, I’d be happy to help find a solution but, from what I’ve seen so far I’m not sure if that is the real objective. If it is please feel free to email me.

Comment by beussery — December 22, 2007


What do you have to do serverside to get SEO/Non-JS support? I’ve Swfaddress 2.1 installed and it works in most browsers but google cannot find the deeplinks and IE also doesn’t work and I am pretty sure it has to do with JS not being supported….

Comment by hydevision — May 1, 2008

Leave a comment

You must be logged in to post a comment.