2014-04-21 59 views
0

我有一個簡單的列表,我希望每次點擊單擊按鈕時都重置到頂部位置。我似乎無法讓我的scrollTop工作,但我無法弄清楚爲什麼。ScrollTop on overflow:隱藏列表項

這裏有一個FIDDLE

HTML:

<div class="listContainer"> 
    <div class="arrow-up"></div> 
    <ul id="list"> 
     <li id="first">item 1</li> 
     <li>item 2</li> 
     <li>item 3</li> 
     <li>item 4</li> 
     <li>item 5</li> 
     <li>item 6</li> 
     <li>item 7</li> 
    </ul> 
</div> 
<button class="click">CLICK</button> 

CSS:

.listContainer { 
    height:100px; 
    width:100px; 
    background:grey; 
    overflow-y:scroll; 
} 
ul#list { 
    background:grey; 
    overflow-y:scroll; 
} 
li { 
    background:white; 
    color:black; 
} 

的jQuery:

$('listContainer').scrollTop() + $('li#first').position().top; 
+0

有兩個元素溢出y的目的是什麼:scroll; **一個在另一個裏面? –

回答

0

你確定你的意思是使用$('listContainer')和不喜歡$('.listContainer')?另外,爲什麼要打頂?如果你需要登頂,.scrollTop(0)會不會成功?

0

DEMO

CSS:

ul#list { 
    height:100px; 
    width:100px; 
    overflow-y:scroll; 
} 

JS:

$('.click').click(function(){ 
    $('#list').scrollTop(0); 
}); 
  • 當使用jsFidde你需要在你的情況j中所需圖書館查詢
  • 有沒有必要有兩個元素與overflow-y:scroll;一個在另一個。
  • 如果您需要點擊事件而不是創建點擊事件。
  • 目標的一個元素你決定有overflow-y和使用你想要一個滾動動畫.scrollTop(0)
  • http://jsfiddle.net/5zj8d/2/