我想在输入文本输入时让页面滚动到特定的div元素。导航具有固定位置,并且item.offset()。top输出类似2859的内容,但页面不滚动。这是代码:
$('nav').on('keyup, keydown','input[name=search]',function(){
var search = $('input[name=search]').val(),
name = '',
item = '',
searchOff = false,
len = search.length;
if(len>2){
$('.products li').each(function(){
item = $(this);
name = item.find('p.left').text().substring(0,len).toLowerCase();
if (name==search && searchOff==false){
console.log(item.offset().top);
$('body, html').animate({scrollTop:item.offset().top},'slow');
searchOff=true;
}
});
}
});
有什么想法吗?