我尝试动态滚动列表。 我找到了this answer,但它对我没有帮助。 我猜这是因为我的列表是一个动态列表。 我能怎么做?我想在选择值上滚动动态列表。
这是我的代码的小提琴:http://goo.gl/Tv7wvj 这是我的代码
HTML
<div class="scroll order">
<ul></ul>
</div>
CSS
.scroll{
overflow-y: scroll;
width:150px;
height:80px;
}
的Javascript
$(document).ready( function() {
var html = '';
for(i=0; i<10; i++){
if(i==6){
html += '<li> <label><input type="radio" name="radio" value="li'+i+'" checked="checked" /> 0'+i+' </label> </li>';
continue;
}
html += '<li> <label><input type="radio" name="radio" value="li'+i+'" /> 0'+i+' </label> </li>';
}
$('ul').append(html);
});
var $s = $('.scroll');
var optionTop = $s.find('[value="04"]').offset().top;
var selectTop = $s.offset().top;
alert("optionTop : "+optionTop+" / selectTop : "+selectTop);
$s.scrollTop($s.scrollTop() + (optionTop - selectTop));
答案 0 :(得分:0)
(Question answered in the comments. Converted to a community wiki answer.)
@Tasos写道:
究竟是怎样才能找到价值=“aaaa”?????您列表中不存在的内容---请参阅此内容jsfiddle.net/nn5fpmqa:
$(document).ready( function() { var html = ''; for(i=0; i<10; i++){ if(i==6){ html += '<li> <label><input type="radio" name="radio" value="li'+i+'" checked="checked" /> 0'+i+' </label> </li>'; continue; } html += '<li> <label><input type="radio" name="radio" value="li'+i+'" /> 0'+i+' </label> </li>'; } $('ul').append(html); }); setTimeout(function() { var $s = $('.scroll'); var optionTop = $s.find('[value="li6"]').offset().top; var selectTop = $s.offset().top; alert("optionTop : "+optionTop+" / selectTop : "+selectTop); $s.scrollTop($s.scrollTop() + (optionTop - selectTop)); }, 2000);