【发布时间】:2019-02-03 08:47:07
【问题描述】:
我正在尝试滚动到 div 内的一个元素,并在 div 中垂直居中。
到目前为止,我已经尝试过这个code,但没有运气。
jQuery(document).on('click', '#scroll_button', function(e) {
var el = $( "#scroll_test" );
var elOffset = el.offset().top;
var elHeight = el.height();
var windowHeight = $("#editor").height();
var offset;
if (elHeight < windowHeight) {
offset = elOffset - ((windowHeight / 2) - (elHeight / 2));
}
else {
offset = elOffset;
}
jQuery('#editor').animate({
scrollTop: $("#scroll_test").offset().top
}, 1000);
});
我正在使用这个example,但它没有按小提琴工作。滚动获取元素位于保持元素顶部的位置。我想把它放在垂直中心。
我还了解到使用 jQuery 获取元素的高度可能不准确,应该使用纯 js,但我没有运气also。
我最初是从this问题开始的。
【问题讨论】: