File: widget/js/WidgetBaseIE.js
- /**
- * IE specific support for the widget-base module.
- *
- * @module widget-base-ie
- */
- var BOUNDING_BOX = "boundingBox",
- CONTENT_BOX = "contentBox",
- HEIGHT = "height",
- OFFSET_HEIGHT = "offsetHeight",
- EMPTY_STR = "",
- IE = Y.UA.ie,
- heightReallyMinHeight = IE < 7,
- bbTempExpanding = Y.Widget.getClassName("tmp", "forcesize"),
- contentExpanded = Y.Widget.getClassName("content", "expanded");
-
- // TODO: Ideally we want to re-use the base _uiSizeCB impl
- Y.Widget.prototype._uiSizeCB = function(expand) {
-
- var bb = this.get(BOUNDING_BOX),
- cb = this.get(CONTENT_BOX),
- borderBoxSupported = this._bbs;
-
- if (borderBoxSupported === undefined) {
- this._bbs = borderBoxSupported = !(IE && IE < 8 && bb.get("ownerDocument").get("compatMode") != "BackCompat");
- }
-
- if (borderBoxSupported) {
- cb.toggleClass(contentExpanded, expand);
- } else {
- if (expand) {
- if (heightReallyMinHeight) {
- bb.addClass(bbTempExpanding);
- }
-
- cb.set(OFFSET_HEIGHT, bb.get(OFFSET_HEIGHT));
-
- if (heightReallyMinHeight) {
- bb.removeClass(bbTempExpanding);
- }
- } else {
- cb.setStyle(HEIGHT, EMPTY_STR);
- }
- }
- };
-
-