Although this is technically a blog, it's primary content is a series of articles on how to get Firefox working in a corporate Windows environment. Later ones build on earlier ones, so you might want to use the Table of Contents on the right to read through it chronologically instead of reading straight down from here.

Dealing With Those Pesky IE-Only Sites (IE Tab Plus vs. IE View)

Unfortunately IE-only sites seem to be unavoidable.  However, we can use extensions to help make this a manageable problem.  There are two we're going to be looking at which use slightly different approaches.  Both of them can be configured through user.js so you can use my script to manage the settings centrally, including the rules that determine which sites require IE.

The first is IE Tab Plus:
  • PRO: Provides a seamless user experience.  Flagged sites are loaded in Firefox.  It looks and (mostly) behaves like a regular Firefox tab, but the contents are actually rendered in IE.
  • PRO: Provides cookie syncing between the browsers, though I haven't tested this.
  • PRO: Uses regular expressions to flag sites, which are more powerful.
  • CON: A tab can become stuck in IE mode depending on how you browse.  If you go to an IE site and then click on a bookmark or type in an URL, you'll switch back to Firefox, but if you keep browsing by clicking links on the page, you'll stay in IE even after leaving the flagged site.
    UPDATE: Turns out you can use the "Switch Back to Firefox in New Page" option to fix this, but that prevented a login from working at an important IE-only site so I'm not going to trust this feature.
  • CON: Can't access IE settings while browsing in IE mode.  If you need to change the security zone you're out of luck.
  • CON: Minor unexpected behaviors.  If you right click on a link to try to bookmark it, it will go to IE's favorites instead.  If you use the star on the URL bar or the Bookmarks menu, it will work correctly.
  • CON: Uses regular expressions to flag sites, which could be confusing for people not familiar with them.
The other is IE View:
  • PRO: Flagged sites load in a separate IE window.  No confusion about how a site is being rendered or side effects from mixing browser UIs.
  • PRO: Can access all IE settings during IE browsing.
  • PRO: Sites are flagged by the beginning of the URL, which is more straightforward.
  • CON: Flagged sites launching a separate window with a completely different UI is a jarring user experience.  Users won't have access to Firefox bookmarks unless they go back to a Firefox window.
  • CON: The simpler rule system means you need a separate rule for URLs with "www" and without, for http and https, for each subdomain, and all combinations thereof.
I'm going with IE Tab Plus for the better user experience, though with some mild trepidation.  Fortunately it provides an icon on the status bar to let you know which engine it's using and to easily switch between the two, which will make troubleshooting easier.  I'm also a programmer so regular expressions don't faze me.

Whichever way you go, use this article to make the extension an MSI and this article to configure it via the login script.  I've updated the script so all configuration keys are at the beginning and added support specifically for these two extensions so configuring the rule lists is easier.


Configuring IE Tab Plus

IE Tab Plus requires three settings be defined in user.js to not pop up a configuration screen.  Add these three lines to firefoxSettings in the login script:
var firefoxSettings = new Array(
   "coral.ietab.mode", "classic",
   "coral.ietab.version", "99.99",
   "coral.ietab.is1209SelectionDone", true
   );
If mode isn't set it will pop up the configuration dialog.  The advanced mode supports cookie and AdBlock sync but I'm not getting into those.  If version isn't set or is lower than the extension version, it will open up a tab of the changelog the first time it starts.  Fortunately we can set it higher than the extension version with no ill effects so we don't have to worry about changing this with every update.  At some point they added a new price comparison feature and I guess they wanted to pop up again so old users can see it, so setting is1209SelectionDone makes it think they already have.

There's also a separate variable ieTabRules which is where you put the regular expressions.  The login script will convert them into a coral.ietab.rulelist setting for you.
var ieTabRules = new Array(
   "http://*update.microsoft.com/*",
   "http://www.windowsupdate.com/*"
   );
If you want to configure any other settings go to about:config in your browser, look at what's available under coral.ietab, and add what you want to firefoxSettings.


Configuring IE View

IE View doesn't require any settings be configured other than the rules, so you can just enter them in ieViewURLs and the login script will convert them into an ieview.forceielist setting for you.  Remember that you have to include all permutations of their beginnings.
var ieViewURLs = new Array(
   "http://www.somesite.com",
   "http://somesite.com",
   "https://www.somesite.com",
   "https://somesite.com"
   );
If you want to configure any other settings go to about:config in your browser, look at what's available under ieview, and add what you want to firefoxSettings.

No comments:

Post a Comment