Javascript 删除div时如何保留当前视口?
请看。基本上,我有3个很长的div。在第二个div的末尾,我有一个按钮,单击它可以删除第一个div。问题是删除这个div会使页面滚动到末尾。发生这种情况时,如何防止这种行为并保持视口完好无损Javascript 删除div时如何保留当前视口?,javascript,jquery,Javascript,Jquery,请看。基本上,我有3个很长的div。在第二个div的末尾,我有一个按钮,单击它可以删除第一个div。问题是删除这个div会使页面滚动到末尾。发生这种情况时,如何防止这种行为并保持视口完好无损 <div id="first"> <p>Some really long content ...</p> </div> <div id="second"> <p>Some really long content... &
<div id="first">
<p>Some really long content ...</p>
</div>
<div id="second">
<p>Some really long content... </p>
</div>
<button onclick="$('#first').remove()">Remove First div</button>
<div id="third">
<p>Some really long content ...</p>
</div>
你解释的行为是意料之中的。要保持回到当前位置,需要调整视口滚动的位置。例如,在JSFIDLE中更新: $“按钮”。单击功能{ var firstElHeight=$'first'.height;//获取要删除的元素的高度 var currentHeight=$body.scrollTop;//获取当前滚动位置 $'第一个'。删除; $body.scrollTop currentHeight-firstElHeight;//计算并返回 };