Javascript jQuery-滚动到<;李>;高度生动
我在滚动到单击的元素时遇到了令人困惑的问题Javascript jQuery-滚动到<;李>;高度生动,javascript,jquery,html,css,scroll,Javascript,Jquery,Html,Css,Scroll,我在滚动到单击的元素时遇到了令人困惑的问题 当我点击元素时,它有animate()方法将元素的高度从270更改为450。在此操作之后,它应该设置滚动到单击元素的动画。但一切正常(如果我打开并关闭),但当我打开(不关闭)第一个元素并单击第三个元素时,由于动画原因,我的偏移量属性错误,并且滚动动画设置得更低(对于180px来说太多) 来自require的JS wideFolio: function() { $( '.fo-content li' ).on( 'click', func
当我点击
元素时,它有animate()
方法将元素的高度从270更改为450。在此操作之后,它应该设置滚动到单击元素的动画。但一切正常(如果我打开并关闭),但当我打开(不关闭)第一个元素并单击第三个元素时,由于动画原因,我的偏移量属性错误,并且滚动动画设置得更低(对于180px来说太多)
来自require的JS
wideFolio: function() {
$( '.fo-content li' ).on( 'click', function(a){
a.preventDefault();
var list = $( '.fo-content li' );
var id = $(this).attr('id');
var flag;
$("html, body").animate({ scrollTop: $(this).offset().top - 180 }, 500);
if( $( this ).css( "height" ) == "270px" ) {
list.animate({ height: "270px" }, 500 );
$(this).animate({ height: "450px" }, 500, );
}
else {
$(this).animate({ height: "270px" }, 500 );
}
console.log("#" + id);
});
},
在HTML中就是ul=>4xli。你能发一把小提琴吗?没问题!请关注前两个要素。打开第一个,点击进入第二个。你可以只使用CSS吗?这会很酷,但我们缺少动画滚动到单击的元素;)但是现在js并没有在坐标上使用animate()进行操作,但是css也做了同样的事情,并且再次滚动到失败的位置(offset().top+diference)