SWFObject
Developer(s) | Geoff Stearns with Bobby van der Sluis, Aran Rhee, Kyle Simpson and Philip Hutchison |
---|---|
Initial release | January 2006 |
Stable release | 2.2
/ June 12, 2009 |
Repository | |
Written in | JavaScript |
Platform | Web browser |
Size | 10 KB (output JS file) |
Available in | English |
Type | JavaScript library |
License | MIT License |
Website | https://github.com/swfobject/swfobject |
SWFObject (originally FlashObject) is an open-source JavaScript library used to embed Adobe Flash content onto Web pages,[1] which is supplied as one small JavaScript file.[2][3] The library can also detect the installed Adobe Flash Player plug-in in all major web browsers, on all major operating systems (OS), and can redirect the visitor to another webpage or show alternate HTML content if the installed plug-in is not suitable.[4]
The library is independent, although related external libraries often integrate with it, such as SWFAddress for deep linking and SWFFit for dynamic content scaling.
With the multitude of Flash embedding JavaScript libraries, SWFObject has emerged as the most popular being used by over 2,600,000 websites as of 2011,[5] including high-profile websites such as Ask.com, Windows.com, Time.com, Skype.com, Discovery.com and YouTube.[6]
Usage
SWFObject provides a reliable method of embedding Flash content into a webpage[7][8] by internally handling the various practices that one must follow in order for different web browsers to display Flash content correctly, and isolating them from the web designer. The developer may interface with the library in a standardized manner, the minimum being a single line of JavaScript code.[9] Therefore, even inexperienced web designers without knowledge of the ideal HTML code to embed Flash content, can easily insert Flash content into web pages, and have them reliably work for the widest possible audience (excepting those with JavaScript disabled).[10] Flash content inserted using SWFObject will also work on devices that support JavaScript execution (and Flash Player), such as the Wii, PlayStation 3 and Nokia N800, unlike the PlayStation Portable.[11]
A disadvantage with SWFObject is that visitors with JavaScript disabled in their web browsers will not be able to view the Flash content,[12] and will instead see alternate HTML content provided by the web page.[13] For websites that aim to reach the widest possible audience an alternate method is available, by using standards-compliant HTML markup to embed the Flash movie (typically using the <object> tags for the best browser compatibility[14]), and using the registerObject() function within the library's API[15] to register the Flash content enabling usage of the other features that the library provides.
Features
SWFObject also includes a few utility functions within its API to retrieve Flash Player related information, such as checking whether a specific version of Flash Player is installed,[16][17] and a few DHTML utilities to help work with the DOM.[18] Because of this, the most common reasons Flash Website developers turn to external JavaScript frameworks such as jQuery or Prototype are satisfied internally, giving developers fewer reasons to add additional JavaScript libraries to their website.
The library can also be used to integrate Flash Player Express Install into the webpage, allowing users to install the latest Flash Player without leaving the site, although this requires a browser restart.[19]
Plugins
SWFAddress
SWFAddress is a JavaScript and ActionScript library that allows Flash websites to support deep linking, and can automatically integrate with SWFObject.
SWFFit
SWFFit (formerly known as FitFlash) is a JavaScript library used to resize Flash movies according to the browser window size, keeping it accessible independent of the screen resolution.[20][21][22][23] SWFFit primarily configures the web browser to display scroll bars when content exceeds the browser window size. It can also be used to dynamically resize the Flash movie size. It is used together with SWFObject.
See also
References
- ^ Todd Perkins, Search Engine Optimization for Flash, O'Reilly Media, 2009, p. 87
- ^ Yakov Fain, Victor Rasputnis, Anatole Tartakovsky, Enterprise Development with Flex, O'Reilly Media, Inc., 2010, p. 183
- ^ Source Checkout, swfobject - Google Code, Page Header, overview of SWFObject
- ^ SWFObject 1.5 Homepage, deconcept
- ^ SWFObject Usage Statistics, BuiltWith
- ^ Who uses SWFObject?, SWFObject FAQ
- ^ Adobe Developer Network
- ^ Roger Braunstein, ActionScript 3.0 Bible, John Wiley and Sons, 2010, p. 898
- ^ Embedding Adobe Flash Player content using SWFObject 2 - Documentation - Google Code
- ^ Ben Henick, HTML & CSS: The Good Parts, O'Reilly Media, Inc., 2009, p. 195
- ^ Do SWFs embedded with SWFObject 2 display in the Sony PS3 or Nintendo Wii web browsers?, SWFObject FAQ
- ^ Chafic Kazoun, Joey Lott, Programming Flex 3, O'Reilly Media, Inc., 2008, p. 524
- ^ Eric Enge, Stephan Spencer, Rand Fishkin, Jessie C. Stricchiola, The Art of SEO, O'Reilly Media, Inc., 2009, p. 273
- ^ Bobby van der Sluis > Flash embed test suite, HTML embed element compatibility
- ^ Function swfobject.registerObject, SWFObject JavaScript API documentation - Google Code
- ^ Robert Reinhardt, Snow Dowd, Flash CS4 Professional Bible, John Wiley and Sons, 2009
- ^ Function swfobject.hasFlashPlayerVersion, SWFObject JavaScript API documentation - Google Code
- ^ Function swfobject.add(Dom)LoadEvent, SWFObject JavaScript API documentation - Google Code
- ^ SWFObject 2.2 - What's new?, Google Code
- ^ swffit: Smart Flash Resize Script, Web Resource Depot
- ^ Roger Braunstein, ActionScript 3.0 Bible, John Wiley and Sons, p. 898
- ^ SWFFit website
- ^ SWFFit, Google Code
External links
- SWFObject 1.5
- SWFObject 1.5 Homepage, deconcept, overview and usage of an older version of SWFObject
- SWFObject 1.5 released, deconcept Blog
- SWFObject 2
- swfobject 2, Google Code, freely download SWFObject for usage on a website
- SWFObject 2 FAQ
- SWFObject Documentation, Google Code, the What, Why and How, of SWFObject 2
- General
- Methods of embedding Flash onto a webpage, internally used by SWFObject to maximize compatibility.
- Embed Multiple Web FLV Players in One Web page, using SWFObject or Flashvars code
- Flash Embedding Cage Match, A List Apart, compares the Flash embedding methods.
- swfobject.js vs Embed HTML, advantages of SWFObject over traditional HTML tags