views:

1165

answers:

2

I'm using Gears which works well in FF3 and Safari; IE6/7 both report a "google is undefined" error on page load, appearing in gears_init.js. A quick web search showed that Javascripts by Google are actually causing problems in IE7. Does anybody have an idea for a workaround?

+2  A: 

This is probably because IE6/7 don't have gears installed. That means the google related code won't be available.

You probably just want to do something like:

if ( !window.google ) {
    alert("please install google gears");
}
else {
    // gears is available
}

Though in reality you'd want to do something a bit nicer than showing an alert to tell the user to download gears.

John Montgomery
A: 

I am using IE8 and I am writing following code, that works fine in Mozilla Firefox but can't working in IE8


if (!window.google || !google.gears) {
        if (confirm("This application requires Gears to be installed. Install now?")) {
            location.href = "http://code.google.com/apis/gears/install.html"
            return;
        } else {
            addStatus('Gears is not installed', 'error');
            return;
        }
}

-> The first condition !window.google is working fine but for second !google.gears, IE8 sais "google is undefined

Amit
Do you have <script src="gears_init.js"></script> in your html?
Nosredna