2011-12-26 18 views
0

的jsfiddle here.邊境區jQuery的事業部高度的變化

我切換使用JQuery 1.5.2一個div的高度,而且大多似乎很好地工作。但是,下邊框線在增長時不會重新定位,但它縮小時會重新定位。

Chrome和IE9的結果都一樣(前兩次後我停止嘗試其他瀏覽器,因爲它們是我的主要目標,除此之外大部分都是兼容的)。

我已經試過什麼:

  • 隱藏和重新繪製邊框
  • 不同(新)jQuery的
  • animate({height: x}, y),而不是css('height', x)
  • 版本
+0

這樣的事情? http://jsfiddle.net/vtex4/3/ – Virendra 2011-12-26 08:43:55

+0

@Virendra與這個問題是,我有這個網頁設計師在固定的高度放置div,我不能觸摸它或其他的東西會打破。 – bdares 2011-12-26 08:46:03

回答

1

使用此代碼,

$("#siteMapToggle").click(function() { 
    var temp = $(this).attr("srcAlt"); 
    $(this).attr("srcAlt", $(this).attr("src")); 
    $(this).attr("src", temp); 

    if ($("#fullmenu .menu_tbl").is(':visible')) { 
     $("#fullmenu").css('height', '100px'); 
     $("#fullmenu .menu_tbl").hide(); 
    } 
    else { 

     $("#fullmenu .menu_tbl").show(); 
     $("#fullmenu").css('height', '267px'); 
    } 
}); 

http://jsfiddle.net/vtex4/4/

1

您可以使用基於溢出 CSS樣式和類簡單的行爲顯示/隱藏邊框底部:

JS

$("#siteMapToggle").click(function() { 

    $("#fullmenu .menu_tbl").toggle("fast", function() { 
     $("#fullmenu").toggleClass('borderHide') 
    }); 

});

CSS

#fullmenu{ 
    width:900px; 
    border-top:3px solid #999; 
    border-bottom:3px solid #999; 
    overflow:auto 
} 

.borderHide { 
    border-bottom:3px solid #999; 
} 

查看完整的jsfiddle這裏:http://jsfiddle.net/vtex4/5/