假设视口为100×100 (宽度×高度),文档为空,滚动位置为(0,0)(x,y)。
body.appendChild
元素A,大小为100×200 body.appendChild
的B(100×50)body.appendChild
的C(再次100×200)现在浏览器仍然滚动到0,0。我正在寻找一个解决方案/库/ jQueryPlugin(我必须在3和6处插入)以防止(4)发生自定义阈值(在这种情况下〜150ms)。
答案 0 :(得分:0)
当元素的高度发生变化时,此fiddle会阻止滚动条持续500秒
$(document).on('click', function(e) {
var elementClone = $('.element').clone();
var currentHeight = $('.element').height();
var currentWinHeight = $(document).height();
$('body, html').css({
height: currentHeight
});
$('.element').remove();
var randomHeight = Math.random() * 1000;
elementClone.css({
height: randomHeight
}).text('height: ' + randomHeight).appendTo('body');
window.setTimeout( function() {
$('body, html').css({
height: 'auto'
});
}, 500)
e.preventDefault();
});