[英]How do I use jQuery/JS to scroll a listbox to the top
在小提琴示例中,我有幾次嘗試以編程方式選擇項目后將列表框滾動到頂部(或列表中的任何點)。 我還沒有找到一種可行的方法或一個SO示例來說明如何成功實現這一目標。 下面是代碼,或者您可以在JSFiddle上看到它。 有人可以指出我正確的方向。
<select id='focusScrollTest' multiple='multiple'>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
<option value="7">7</option>
<option value="8">8</option>
<option value="9">9</option>
</select>
$(document).ready(function(){
//return the current scroll position before selecting the last option
var x = $("#focusScrollTest").scrollTop();
//Displays 0
//alert(x);
//Select the last option value
$("#focusScrollTest option[value='9']").attr('selected', 'selected');
//return the current scroll position after selecting the last option
var y = $("#focusScrollTest").scrollTop();
//Displays 85
//alert(y);
///
/// These do not change the scroll
///
//$("#focusScrollTest option[value='1']").scrollTo();
//$("#focusScrollTest option[value='1']").scrollTo(0);
//$("#focusScrollTest").scrollTo(x);
//$("#focusScrollTest").scrollTo(0);
//$("#focusScrollTest").scrollTo(1);
//$("#focusScrollTest").scrollTop = 0;
//$("#focusScrollTest option[value='1']").scrollTop = 0;
//$("#focusScrollTest").focus();
//$("#focusScrollTest option[value='1']").focus();
//$("#focusScrollTest").blur().focus();
//$("#focusScrollTest option[value='1']").blur().focus();
//This is very interesting, even though it is done last the box
//still scrolled to the end
//$("#focusScrollTest option[value='1']").attr('selected', 'selected');
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.