Javascript jquery中具有偏移顶部的奇怪问题
通常我能找出这些东西,但根据我所看到的,这段代码的实际偏移量大约为700像素 我在这里所做的基本上是锁定一个按钮,当你滚动过去时,它就在一个固定的标题下。测试控制台输出时,我可以看到,根据这段代码,按钮距离顶部大约713像素。然而,它实际上距离顶部约1300像素。在另一个元素的中间大概有713个像素的引用,所以从逻辑上讲,我不可能得到这个数字。 这是我的密码Javascript jquery中具有偏移顶部的奇怪问题,javascript,jquery,scrolltop,Javascript,Jquery,Scrolltop,通常我能找出这些东西,但根据我所看到的,这段代码的实际偏移量大约为700像素 我在这里所做的基本上是锁定一个按钮,当你滚动过去时,它就在一个固定的标题下。测试控制台输出时,我可以看到,根据这段代码,按钮距离顶部大约713像素。然而,它实际上距离顶部约1300像素。在另一个元素的中间大概有713个像素的引用,所以从逻辑上讲,我不可能得到这个数字。 这是我的密码 window.contOffset = jQuery('#cont-step3').offset(); window.co
window.contOffset = jQuery('#cont-step3').offset();
window.contWidth = jQuery('#cont-step3').outerWidth();
jQuery(window).scroll(function(){
if(window.contOffset.top<jQuery(document).scrollTop()){
jQuery('#cont-step3').css({
position:'fixed',
top:'70px',
left:window.contOffset.left+'px',
width:window.contWidth+'px'
});
}else{
jQuery('#cont-step3').removeAttr('style');
}
console.log(window.contOffset,jQuery(document).scrollTop());
});
jQuery('#core-values2').sortable({
update:function(event,ui){
updateValues();
}
});
window.contOffset=jQuery('#cont-step3').offset();
window.contWidth=jQuery(“#cont-step3”).outerWidth();
jQuery(窗口).滚动(函数(){
如果(window.contOffset.top问题不仅仅是检查dom是否完成,而是在每次更改dom时重新初始化事件,那么任何其他可能更改属性(如菜单)的javascript都会抛出滚动事件
我成功地将函数连接到remove,然后在每次对任何内容进行更改时重新初始化该事件
jQuery(window).off('scroll').on('scroll',function(){
if(window.contOffset.top<jQuery(document).scrollTop()){
jQuery('#cont-step3').css({
position:'fixed',
top:'70px',
left:window.contOffset.left+'px',
width:window.contWidth+'px'
});
}else{
jQuery('#cont-step3').removeAttr('style');
}
console.log(window.contOffset,jQuery(document).scrollTop());
});
jQuery(窗口).off('scroll').on('scroll',function()){
如果(window.contOffset.top)您能在处重现问题吗?我不确定,计算中可能有与完整网站代码的连接(其他元素的边框、边距等)。因此在这种情况下,JSFIDLE可能不会看到相同的问题。不过,我将把代码放在一起,看看它是否有效