Details
-
Type: Bug
-
Status: Closed
-
Priority: Major
-
Resolution: Fixed
-
Affects Version/s: EE-3.2.0.GA
-
Fix Version/s: 3.3
-
Component/s: ACE-Components
-
Labels:None
-
Environment:IE7, IE9 Compat
-
Assignee Priority:P3
-
Salesforce Case Reference:
Description
An ice:panelDivider is used in an ace:tabPane and set to have a vertical orientation. When navigating to the tab that contains the divider in IE7 or IE9 Compat mode, a JavaScript error is thrown and the tabs contents do not render. This only seems to be an issue if the orientation is set to vertical, when set to horizontal the errors aren't seen.
The clientWidth and offsetWidth values are zero because the Ice.PanelDivider.adjustSecondPaneSize function is invoked (via Ice.PanelDivider.onLoad) by inline script while the document is modified. Most probably IE7 needs to have the document loaded before calculating the element layout.
The fix applied modifies Ice.PanelDivider.onLoad to poll document.readyState until the document is completely loaded then run the panel divider calculations. I tried to use document.observe('dom:loaded', ... ) function from Prototype instead, but the results were not successful, hence the hand-crafted solution.