Ticket #4011: ui.accordion.js-fixed-width.patch

File ui.accordion.js-fixed-width.patch, 1.1 KB (added by Jörn Zaefferer, 14 years ago)

Fix width of hidden element before calculating height

  • ui/ui.accordion.js

     
    398398                                percentDone,
    399399                                showProps = {},
    400400                                hideProps = {},
    401                                 fxAttrs = [ "height", "paddingTop", "paddingBottom" ];
     401                                fxAttrs = [ "height", "paddingTop", "paddingBottom" ],
     402                                originalWidth;
     403                        // fix width before calculating height of hidden element
     404                        if (options.toShow[0]) {
     405                                var s = options.toShow;
     406                                originalWidth = s[0].style.width;
     407                                s.width( parseInt(s.parent().width()) - parseInt(s.css("paddingLeft")) - parseInt(s.css("paddingRight")) - parseInt(s.css("borderLeftWidth")) - parseInt(s.css("borderRightWidth")) );
     408                        }
    402409                        $.each(fxAttrs, function(i, prop) {
    403410                                hideProps[prop] = 'hide';
    404411                               
     
    431438                                easing: options.easing,
    432439                                complete: function() {
    433440                                        if ( !options.autoHeight ) {
    434                                                 options.toShow.css("height", "auto");
     441                                                options.toShow.css("height", "");
    435442                                        }
     443                                        options.toShow.css("width", originalWidth);
    436444                                        options.toShow.css({overflow: overflow});
    437445                                        options.complete();
    438446                                }