09:40 AM
Connect Directly
Repost This

Those Cross-Browser Blues: How To Develop Web Sites For Both Internet Explorer And Firefox

If you're trying to develop sites that will be compatible with IE, Firefox, and Opera, watch out -- there are still a lot of speed bumps out there. We examine six of them and let you in on some solutions.


This is one part that really drives people crazy. IE-specific ActiveX controls, as opposed to plugins that work in almost all browsers (such as Flash or QuickTime), force people to use IE to load a given page (or a whole site) whether they want to or not.

Sadly, this usually isn't a design move that you can just undo, since it's often rooted in other technology decisions. Consider Netflix's Watch Now function, which lets you watch movies streamed from Netflix's online library in a browser. The required plug-in is IE-only, because it uses a security wrapper and codec provided by Windows Media Player. There's no way to change something like that without reworking the entire content delivery mechanism.

There are two basic ways to deal with ActiveX being an IE-only issue, aside from mandating the use of IE:

A. Move away from ActiveX entirely. Again, this isn't always something you can declare by fiat -- especially if the decision to use or not use ActiveX isn't something that is in your hands. If you have the clout to do so, suggest as many non-platform-specific alternatives as you can. Solutions written in Flash are probably the best substitute for ActiveX multimedia controls, and there are a great many third-party Flash controls to choose from that offer such things.

B. Compel non-IE users to use ActiveX compatibility controls. This seems like an interim solution at best. It is possible for Firefox users to run ActiveX controls using a Firefox plug-in, but a given user might not be in a position to install said control, and even if they are, they may not want to do that.

User Interface And Keybindings

This is a relatively minor issue, but one that became significant for me when I tried to write an Ajax-based chat application that used it. It's possible to bind hotkeys (Alt + a given letter key) to certain Web controls, like form buttons, by using the accesskey attribute for the control in question.

The problem is that the browser isn't always obliged to implement the chosen access key, especially if it overrides an existing browser command. The way the hotkey is invoked also varies from browser to browser -- and even varies among iterations of a given browser. In Firefox 1.x, the default was Alt + hotkey; in FF 2.x, it's now Shift + Alt + hotkey. It's possible to reset the default behavior with an about:config hack -- change ui.key.contentaccess to 4 -- but I've found people aren't always willing to make changes like that for the sake of a couple of sites.

Because of the scattershot way this feature's implemented, it's best not to rely on it for anything, but simply to provide it as an adjunct to existing functionality. Another way to handle it is not to use accesskey at all, but to use cross-browser JavaScript to trap keystrokes and implement focus changes or commands as needed.

4 of 5
Comment  | 
Print  | 
More Insights
The Agile Archive
The Agile Archive
When it comes to managing data, donít look at backup and archiving systems as burdens and cost centers. A well-designed archive can enhance data protection and restores, ease search and e-discovery efforts, and save money by intelligently moving data from expensive primary storage systems.
Register for InformationWeek Newsletters
White Papers
Current Issue
InformationWeek Elite 100 - 2014
Our InformationWeek Elite 100 issue -- our 26th ranking of technology innovators -- shines a spotlight on businesses that are succeeding because of their digital strategies. We take a close at look at the top five companies in this year's ranking and the eight winners of our Business Innovation awards, and offer 20 great ideas that you can use in your company. We also provide a ranked list of our Elite 100 innovators.
Twitter Feed
Audio Interviews
Archived Audio Interviews
GE is a leader in combining connected devices and advanced analytics in pursuit of practical goals like less downtime, lower operating costs, and higher throughput. At GIO Power & Water, CIO Jim Fowler is part of the team exploring how to apply these techniques to some of the world's essential infrastructure, from power plants to water treatment systems. Join us, and bring your questions, as we talk about what's ahead.