Creating Flash widgets
Macromedia Flash is best known for its ability to make Web sites seemingly come alive -- bouncing logos, flying text, graphics, and photographs that fade in and out -- and more. Developers can also use Flash to create Web-based forms and a variety of Web widgets commonly found in these forms. The latest version -- Flash MX -- allows developers to create checkboxes, dropdown menus, radio buttons, and more. The client-side script used to create a Flash file is called Actionscript.
There are several reasons why someone might want to create Flash Web widgets rather than standard HTML widgets, including:
- Flash widgets can be custom-designed to go with the look and feel of a site.
- Users of Flash forms can receive feedback based on their input without waiting for a new page to load. Multipage HTML wizards can thus become one page that dynamically responds to users' input.
- Flash elements can be disabled based on a user's selection without reloading the page.
Flash, however, does not appear to be a silver bullet. While reading the rave reviews of Macromedia Flash in Macromedia Flash: A New Hope for Web Applications (see Resources), I came across a comparison of Volkswagen's Asia Pacific car building application (see Figure 2) with the United States/Canadian HTML version of the same application.
Another example below (see Figure 3) illustrates the possible misuses of Flash. Here the developers have chosen to use scripted image buttons (instead of more standard radio buttons) to enable users to choose between a one-way and a round trip as part of a flight booking form. This approach presents at least three potential usability problems:
- Users might not understand what the image buttons represent.
- Users might not realize that these options are clickable since they are not designed to look like buttons.
- This design wastes a considerable amount of screen space.
The developers could have used the more intuitive, though perhaps less eye-catching, radio button widgets that come packaged with Flash MX.
Consider these usability tips to create more effective Flash Web pages:
- Minimize the file size of Flash movies to reduce download time. Consider breaking up a large Flash movie into segments to reduce the initial download time and spread it out between segments.
- Keep users in control of the interface. It isn't always user-friendly to automatically transition users to new segments without allowing them to confirm a selection. Adding a command button like "Next" or "Go" to the interface will give users more control.
- If your Web page is made up entirely of Flash, users might experience erratic browser behavior when they click the browser 'Back' button. Some developers opt to remove the browser navigation buttons to prevent such problems from occurring. While this might solve one problem, it creates a new one -- users can't navigate! If you choose to hide the browser's navigation buttons, consider adding custom-made navigation buttons to the Flash interface.
- Carefully consider the cost of a typical Web widget design using Flash. Is the new look or behavior likely to enhance the usability of the site? What is the benefit to users?
- Design your Web pages so that content is still readable without Flash. If this is not possible, offer an alternative, HTML version of the site as well.
- Use a text-only browser such as Lynx to test that your content is still readable without Flash scripts.
Also, keep in mind that Flash might still require a plug-in. Users who do not use browsers that are pre-packaged with Flash will have to download the plug-in. Even browsers that come pre-built with Flash 5 (Internet Explorer 5+ and Netscape 6+) will have to upgrade to the Flash MX plug-in in order to view Flash MX files.