PDA

View Full Version : TreePicker issue with IE8 Post-Compile



existdissolve
30 Dec 2013, 9:56 AM
Howdy--

I'm running into a very strange issue. In my app, I have a form field using a vanilla implementation of Ext.ux.TreePicker (http://docs.sencha.com/extjs/4.2.0/#!/api/Ext.ux.TreePicker)

The issue I'm experiencing is this: after I compile my application, the TreePicker begins to fail, albeit in a reproducible way, but only in Internet Explorer 8. Here are the steps that create the issue:

Click on field to open tree picker
Expand a node
Expand another node (child or sibling)
Picker closes, no selection
After this happens, I have to double-click the field to re-display the picker
Expand a node
Expand another node (child or sibling)
Picker closes again, no selection
So in other words, every second click of any node closes the picker. The really odd part of this is that this picker works absolutely fine in Internet Explorer 8 when the app is not compiled. After I compile, however, the above behavior begins, and is *only* an issue in IE8--Firefox, Chrome, IE9+ all work as expected.

I have tried to recreate this in a Fiddle, but I cannot. I'm assuming it's something to do with how the dependencies in my particular application are getting put together. I've gone through file-by-file trying to make sure that everything is resolved, but haven't had any luck.

I'm hoping that someone might have a suggestion of what to check next. I don't think it's a bug, just an issue with my compilation, but given the poor debugging tools available for IE8, I'm having a hard time figuring out where to look next. Any help/suggestions would be greatly appreciated!

Setup Details:

*Version*: Ext JS 4.2.0 - Tried upgrading, didn't help
*Sencha Cmd Version*: v4.0.1.45 - I was originally using 3.1.1.274. Upgraded Cmd and the app, but same result
* TreePicker' store is loaded remotely, but is a full tree once the request completes. There are no subsequent AJAX requests when the nodes are expanded

scottmartin
30 Dec 2013, 10:27 AM
Few shots in the dark ...

Any chance of a missing/extra comma in your code?
Any rhino errors on compile?

No console errors in the compiled version?


I have tried to recreate this in a Fiddle

If you where to use this test case and compile it, do you see the error?
Have you tried just compiling the code with YUICompressor itself to see if this still happens?

existdissolve
30 Dec 2013, 10:47 AM
Few shots in the dark ...

Any chance of a missing/extra comma in your code?
Any rhino errors on compile?

No console errors in the compiled version?



If you where to use this test case and compile it, do you see the error?
Have you tried just compiling the code with YUICompressor itself to see if this still happens?

No compilation errors, no compression errors. I will try to compile the test case to see if I can recreate it that way.

One thing that's interesting that I just noticed is that the uncompiled version is producing slight different HTML than is the compiled version, not only for the TreePicker, but for other elements as well. Perhaps that is the culprit. Any thoughts on what that might be from?

Thanks

existdissolve
30 Dec 2013, 12:29 PM
Wow, just found the issue. In my compiled template, someone had added the following:


<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">

When I added this into my dev index.html, I was able to recreate the issue in the uncompiled version of my code.

So apparently the TreePicker will not work in IE8 when the X-US-Compatible is used.

scottmartin
30 Dec 2013, 12:46 PM
Yes .. compatible mode is not supported.