我有一个功能,可以在滚动后将导航侧边栏固定在顶部。但是当我的屏幕最小化顶部缩短的徽标和导航的位置发生变化时,我写了另一个' if'在第一个解决问题的内部功能。现在位置是正确的但导航侧栏在滚动时固定在顶部。请你帮我....功能如下....
$(function() {
var stickyHeaderTop = $('#myScrollspy').offset().top;
var yy = document.getElementById("cor").clientHeight;
$(window).scroll(function() {
if ($(window).scrollTop() > stickyHeaderTop) {
$('#myScrollspy').css({
position: 'fixed',
top: '8px',
left: '0px'
});
$('#my').css({
position: 'absolute',
right: '0px'
});
} else {
setInterval(function() {
if (yy < '490') {
var yu = '500' - yy;
$('#myScrollspy').css({
position: 'absolute',
top: ''
700 '-yy',
left: '0px'
});
$('#my').css({
position: 'absolute',
right: '0px'
});
}
}, 30);
}
});
});
答案 0 :(得分:2)
您有一些语法问题,请在下面的评论中提到它们。
if (yy < 490) { //syntax issue here
var yu = 500 - yy; //syntax issue here
$('#myScrollspy').css({
position: 'absolute',
top: (700 - yy)+'px', //syntax issue here
left: '0px'
});
$('#my').css({
position: 'absolute',
right: '0px'
});
}
document.getElementById("cor").clientHeight
将返回一个int(数字)。
注意:此属性将值舍入为整数。如果您需要小数值,请使用
element.getBoundingClientRect()
。