Javascript 为移动位置创建常量而不是变量

Javascript 为移动位置创建常量而不是变量,javascript,jquery,css,Javascript,Jquery,Css,我有一个元素,当它被滚动到某个位置时,我希望将其设置为一个固定位置。我能做到这一点很好,我的问题是,我如何删除固定位置 当前,我正在查找当scroll到达元素的偏移顶部时修复元素的位置。问题是,我无法再获取元素顶部偏移量的数字,因为它现在是固定的,当您滚动时,数字会发生变化。所以,我怎样才能保持这个常数,我试着使用const和var,但不同 scroll = $(window).scrollTop(); function tb_fix() { if($('#report_toolbar

我有一个元素,当它被滚动到某个位置时,我希望将其设置为一个固定位置。我能做到这一点很好,我的问题是,我如何删除固定位置

当前,我正在查找当scroll到达元素的偏移顶部时修复元素的位置。问题是,我无法再获取元素顶部偏移量的数字,因为它现在是固定的,当您滚动时,数字会发生变化。所以,我怎样才能保持这个常数,我试着使用const和var,但不同

scroll = $(window).scrollTop();

function tb_fix() {
    if($('#report_toolbar').length) {
        const POS = $('#report_toolbar').offset().top;
        if(scroll >= POS) {
            $('#report_toolbar').addClass('fixed');
            $('#tb_spacer').show();
        } else if(scroll < POS && $('#report_toolbar').hasClass('fixed')) {
            $('#report_toolbar').removeClass('fixed');
            $('#tb_spacer').hide();
        }
    }
}
scroll=$(窗口).scrollTop();
函数tb_fix(){
如果($('#报告工具栏')。长度){
const POS=$(“#报表_工具栏”).offset().top;
如果(滚动>=位置){
$(“#报表工具栏”).addClass('fixed');
$('tb#u间隔区')。show();
}else if(滚动
在工具栏下方,您有一个#tb#u间隔棒。这仍然是具有恒定偏移量的静态元素。试试这个:

function tb_fix() {
    if($('#report_toolbar').length) {
        pos = $('#report_toolbar').offset().top;
        pos2 = $('#tb_spacer').offset().top;
        if(scroll >= pos) {
            $('#report_toolbar').addClass('fixed');
            $('#tb_spacer').show();
        } 
        if(scroll < pos2 && $('#report_toolbar').hasClass('fixed')) {
            $('#report_toolbar').removeClass('fixed');
            $('#tb_spacer').hide();
        }
    }
}
函数tb\u fix(){
如果($('#报告工具栏')。长度){
pos=$(“#报表_工具栏”).offset().top;
pos2=$('#tb_垫片').offset().top;
如果(滚动>=位置){
$(“#报表工具栏”).addClass('fixed');
$('tb#u间隔区')。show();
} 
if(滚动