2010-10-19 76 views
3

現在我收到了這個奇怪的問題,當我在<div>上使用jQuery的animate()函數時,它刪除了滾動的功能。我正在用animate()調整高度。這個問題只會出現在IE瀏覽器中,並且可以正常使用Chrome和FF。jquery animate刪除IE中的滾動滾動IE

下面是我的CSS類爲我的div

div.fullscroll{ 

    height: 65%; 
    width: 75%; 
    overflow-x: hidden; 
    overflow-y: scroll; 
    border-top: 1px solid #347235; 
    border-bottom: 2px solid #347235; 
    border-right: 2px solid #347235; 
    border-left: 2px solid #347235; 
    -moz-border-radius-topleft:  .1em; 
    -moz-border-radius-topright: .1em; 
    -moz-border-radius-bottomright: .2em; 
    -moz-border-radius-bottomleft: .2em; 
    border-top-left-radius: .1em; 
    border-top-right-radius: .1em; 
    border-bottom-right-radius: .2em; 
    border-bottom-left-radius: .2em; 
    background-color: #FFF; 
    padding: 0px; 
    margin: 0px auto; 
    position:relative; 
} 

這裏是我的JS jQuery的動畫,其中<div id='main'>

$('#main').animate({ 
      height: "40%" 
      } 
      ,"slow"); 

的動畫結束後的<div>標籤不再有滾動的能力。我完全沉迷於此,並想知道是否有人有一個想法。

(再次強調這只是在IE中發生)

+0

我總是把我的2美分,在這種情況下 - 你沒有設置值設置爲0(的margin,padding)時使用的尺寸後綴。 '保證金:0'很好:)只是節省了你幾個字節:) – Marko 2010-10-19 03:33:40

回答

0

我能夠使用快速解決方法解決此問題。動畫完成後,我將溢出屬性添加回元素。

$('#main').animate({ 
     height: "40%" 
    },function(){ 
     $('#main').css('overflow-y','scroll'); 
    } 
); 
0

我猜測這可能是IE的問題,結實率高度(ref)。嘗試將高度更改爲像素值,然後查看它是否有效。

另外,是#main.fullscroll是同一個div嗎?

+0

是#main和.fullscroll是一樣的 – Albinoswordfish 2010-10-19 05:11:10

+0

我試着改變像素值的高度,但我仍然有同樣的問題... – Albinoswordfish 2010-10-19 14:02:20