PDA

View Full Version : Enable IE6+ to work with Sencha Touch!



cavalleydude
7 Mar 2011, 10:37 AM
Like most large development shops, we need to write apps that run on iE6+ browsers. Since IE does not use WebKit... Touch is impossible on IE right? No. Google created an IE plugin to solve this. I've tested this and it works great.

I found a great plug-in for IE6+ called "Google Chrome Frame" and it adds a Chrome frame to your application... using a simple meta tag in your Touch application will enable it (because Chrome has WebKit).

Google Chrome Frame is not new and has been out for quite a while. Currently, it requires Administrative privileges to install, but looks like Google is working on a User level installation that should be coming out soon.

Steps to get IE6+ 'Chromified'

(1) Install the Google Chrome Frame plug-in
http://code.google.com/chrome/chromeframe/
Close and Re-open IE

(2) Add metatag to the top of your index.html
<meta http-equiv="X-UA-Compatible" content="chrome=1" />


That's it... your app should now work on IE.

elishnevsky
7 Mar 2011, 11:00 AM
Why would you want Sencha Touch app to run in IE6? :-/

tryanDLS
7 Mar 2011, 11:18 AM
Just because you can do something, doesn't mean you should do something. Yes, you might be able to make IE6 jump thru hoops to do that, but it's probably a bad idea. IE6 is already very slow and adding more layers on top of it to emulate another browser and then render HTML5 is going to run so slow as to be not worth it. And, just like everything else about IE, it's probably not going to be 100% functional, so you'd just have to add yet another set of workarounds to get it right.

If you're serious about supporting both IE6 and Sencha Touch for your apps, you're efforts are probably better spent separating you UI layer from the rest of your app's JS so you can swap frontends more easily.

I don't speak for Sencha, but if I think if they were to devote resources to supporting other platforms, I'd rather see Mozilla compatibility.

cavalleydude
7 Mar 2011, 12:47 PM
WHY IE: because not all Touch apps are small phone apps. Tablet apps (like iPad) actually look very nice on a desktop browser thereby widening the target audience.

WHY BOTHER: because its worth it and it works :) The plugin only works on pages that have the meta tag, so you don't have to worry about it causing other issues.

mitchellsimoens
7 Mar 2011, 3:57 PM
I'm sure performance is just wonderful

existdissolve
7 Mar 2011, 8:22 PM
Easier process: 1.) Install Chrome. 2.) Done.

Seriously, if someone's already installing Chrome Frame (and has the sufficient privileges to do so), it's likely they have the same privileges to just go ahead and install the real thing. So why bother with giving them what is going to ultimately be a sub-prime experience?

The longer people keep stringing along IE6 on life support, the longer people will keep using it. Just pull the plug already.

But honestly, like others have pointed out, I'm not really sure what the point is of getting Sencha Touch apps to work in IE6. The main point of Sencha "Touch" is to provide a super sweet mobile app framework. While it's certainly a bonus that a lot of Sench Touch functionality works in a regular ol' browser (well, real browsers at least), it's kind of missing the point of it all to focus on the non-mobile, non-touch side of things, IMO. Seems like a lot of unnecessary work and effort to try to get it working in an environment that it's not meant for; why not take the other poster's suggestion, abstract your apps a bit more, and maybe use regular ExtJS for IE6 support within the browser app? That makes much more sense from an application perspective than trying to make an HTML5-infused mobile framework play nicely with something that is old, slow, and needs a special, modern browser plugin to even get it work at all.

sobrle
13 Apr 2011, 11:10 PM
WHY IE: because not all Touch apps are small phone apps. Tablet apps (like iPad) actually look very nice on a desktop browser thereby widening the target audience.


I second that.

Does anybody knows if there is a way to implement nested list from Touch Kitchen sink demo in Firefox:-/

It has great functionality and it would be shame not to use it at all main browsers (including ones without webkit).

best

superstructor
24 Apr 2011, 7:03 AM
Actually I've found Chrome Frame for IE to have decent performance, especially compared to stock IE.

Sure Chrome Frame wouldn't be my personal browser preference over Chrome itself. The point is it works for those who want the IE "look and feel" for whatever reason they might have...

superstructor
24 Apr 2011, 7:10 AM
Does anybody knows if there is a way to implement nested list from Touch Kitchen sink demo in Firefox:-/


That depends on what your aiming for.

If you just want a grid component to act similar to a Touch nested list, that would probably be relatively easy to do with ExtJS.

If you want the exact "look and feel" of the nested list from the Touch kitchen sink demo I doubt ExtJS would be your friend for implementing this as it has significantly different opinions on design to Touch. You could probably punch it repeatedly until it reluctantly agreed to do what you wanted, or you could just implement it with a lower level framework like jQuery+Backbone.js (simply an example, not a recommendation).

Cheers.

burrellramone
19 Dec 2012, 1:48 PM
I would love to know too. I will read below to find out. lol

Preetham Madapura
25 Jul 2013, 10:34 AM
Chrome frame + a meta tag = Sencha touch app on IE :) Yes ! it worked. But wait :-? not always

It worked only for IE 10 in my case. I have a Windows 8 machine with default IE 10. I installed chrome frame and added meta tag to the source code and it worked. But I wanted to make sure that it works on IE9 and IE8 as well. So, when I tried to run it on a Chrome frame installed IE 9 browser on another machine, it just DID NOT work.

It is extremely important for our application to run on IE9 and IE8. Can anyone please help me with this issue?
Seriously looking forward for a response.