Search code examples
internet-explorerember.jscross-browsertodomvc

Why does the Todos MVC ember demonstration app produce a slow script warning in IE8?


I am just beginning to learn how to use Ember and am evaluating it along with other JavaScript MV* libraries/frameworks/conventions. So far I am impressed by ember's architecture and performance. However, one of the requirements that my organization has is that whatever we choose has to function on IE8. I've seen it noted elsewhere that IE8 is supported but, of course, performance may be degraded.

Why is it then that the basic Todos example on the ember website seems to work fine, but the one on the TodoMVC project website seems to get stuck in an infinite loop? When I loaded it in IE8 the page didn't look correct (the "what needs to be done?" placeholder was not there, for example), and every few seconds it would produce the slow script warning ("A script on this page is causing Internet Explorer to run slowly...").

Does this have anything to do with Ember router or some other feature or plugin that was included on the TodoMVC example but not on the basic one? Any help is appreciated!

UPDATE: Seeing as Ember has changed a lot since I posted this question 6 months ago and also that worldwide IE8 usage has dropped to about 24% (hopefully much less soon), this question is becoming irrelevant. Furthermore, the "good" Ember TODOs code I originally referenced appears to have been moved or deleted, and the one with the "infinite loop" problem in IE8 now exhibits a different problem: Object doesn't support this property or method (todos_controller.js, Line 8). Therefore, I am going to recommend closing this question even though I never obtained a satisfactory answer.


Solution

  • This question is becoming irrelevant (see update). Though recent code I've tried using in IE8 doesn't seem to work right, this may not be the fault of EmberJS but rather some other modern web browser feature not being supported. According to Peter Wagenet (about a year ago), EmberJS should be able to work even with older browsers, but performance may be degraded. http://www.browserstack.com/list-of-browsers-and-platforms