jquery背景位置

jquery背景位置,jquery,css,parallax,Jquery,Css,Parallax,所以我已经实现了视差滚动,一切正常,但我遇到了一个小错误,希望某些面板的背景图像受到视差的影响 简而言之,由于一些奇怪的原因,我根本无法修改背景位置值。“我的浏览器”中的“检查器”中没有显示任何更改或任何错误。非常感谢您的帮助 $(window).scroll(function() { //MANAGING PARALLAX SCROLLING var currentScrollPosition = $(document).scrollTop()

所以我已经实现了视差滚动,一切正常,但我遇到了一个小错误,希望某些面板的背景图像受到视差的影响

简而言之,由于一些奇怪的原因,我根本无法修改背景位置值。“我的浏览器”中的“检查器”中没有显示任何更改或任何错误。非常感谢您的帮助

$(window).scroll(function() {
            //MANAGING PARALLAX SCROLLING

            var currentScrollPosition = $(document).scrollTop();
            $("#hero-bg").css({'top' : 'calc(' + currentScrollPosition/30 + 'rem ' + ' - 10rem)'});
            //^^^WORKS FINE

            $("#panel2").css({'background-position' : '0rem ' + -currentScrollPosition/50 + 'rem'});
            //^^^DOESN'T WORK
            console.log(-currentScrollPosition/50 + 'rem');
        });
下面是一个附加的片段,演示我正在尝试做的事情

$(窗口)。滚动(函数(){
//管理视差滚动
var currentScrollPosition=$(document.scrollTop();
$(“#panel2”).css({backgroundPosition:'0rem'+-currentScrollPosition/50+'rem'});
console.log(-currentScrollPosition/50+'rem');
});
#主体{
位置:相对位置;
宽度:100%;
高度:50雷姆;
背景颜色:浅灰色;
z指数:1;
}
#小组2{
位置:相对位置;
宽度:100%;
高度:20雷姆;
顶部:10雷姆;
背景色:黑色;
溢出:隐藏;
背景大小:100%;
z指数:2;
}


将id更改为类(“panel2”改为“.panel2”)修复了它。。。我想得太多了。

试试
console.log(-currentScrollPosition/50)
看看你有什么好的。是的,现在我做了这个更改,一切正常。Inspector说它正在更改并显示值,但我看不到任何结果…检查页面上是否有唯一的ID(有时这是一个原因)。另一种方法是在连接的值之间添加括号以更改运算符优先级。为了便于使用和提高速度,我运行了一个单页网站,每个页面中都有一个#panel2,但一次只能看到一个页面。无论有多少页面(节)可见,如果加载的html页面上几乎没有相同的ID,则可能无法工作。