最近在个人网站上工作并使用jQuery ScrollTop为我的内容div制作动画。但是我遇到了一个问题。
1st:每个参与者的顶部都有一个奇怪的填充
第二名:滚动不一致,即。它不会每次都滚动相同的高度。
您可以在此处查看页面:http://mnpwr.dk/v2/index.html
- 我添加了一个红色边框,因此更容易看到问题。
jQuery:
jQuery.noConflict();
jQuery(document).ready(function () {
getHash();
});
// Keep track of our current state
currentSection = 1;
function getHash() {
jQuery('.scroll').on('click', function () {
// Get our new state
var gethash = jQuery(this).attr('class').split(' ')[0];
// Calculate the difference, with element height of 500px using formular dest = (newPows - currentPos) * elmHeight
var scrollTop = (gethash - currentSection) * 500
jQuery('#contentDiv').animate({
scrollTop: scrollTop
}, 500);
return false;
});
}
答案 0 :(得分:0)
只需添加CSS
p{
margin:0px;
}
希望这能澄清你的“问题”
你的下一个问题是,如果你有高度为500px的元素,如果你添加一个红色边框1px比元素的高度实际上是502 :) 因此,如果您将500乘500动画,则位置将不准确。
只是一个建议,使用.position()
获取元素位置并将scrollTop
设置为检索到的值
<强> LIVE DEMO 强>