Javascript Jquery中的CSS位置和if语句

Javascript Jquery中的CSS位置和if语句,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我正在使用脚本移动页面上的某些背景元素。它通过移动名为#tright的元素的“右”位置来工作。这类似于视差效果。所有这些都非常有效,但我希望#right元素在其正确值大于0时停止移动。我试着把一切都写进if语句中。因此,如果该值大于0,则不执行任何操作。如果小于零,继续。我显然不是一个程序员,所以我甚至不确定这是否是最好的方法。谁能告诉我我做错了什么 $(window).bind('scroll',function(e){ moveTriangles(); }); function m

我正在使用脚本移动页面上的某些背景元素。它通过移动名为#tright的元素的“右”位置来工作。这类似于视差效果。所有这些都非常有效,但我希望#right元素在其正确值大于0时停止移动。我试着把一切都写进if语句中。因此,如果该值大于0,则不执行任何操作。如果小于零,继续。我显然不是一个程序员,所以我甚至不确定这是否是最好的方法。谁能告诉我我做错了什么

$(window).bind('scroll',function(e){
    moveTriangles();
});

function moveTriangles(){
    var scrolled = $(window).scrollTop();
    var rightTriPosition = $( 'canvas#tRight.bTri' ).css( "right" );

if (rightTriPosition < 0){
    $('#tRight').css('right',(-70+(scrolled*.10))+'%');
}
else{
}

}
$(窗口).bind('scroll',函数(e){
移动三角形();
});
函数moveTriangles(){
var scrolled=$(窗口).scrollTop();
var rightTriPosition=$('canvas#tRight.bTri').css(“right”);
如果(右三位置<0){
$('#tRight').css('right',(-70+(滚动*.10))+'”);
}
否则{
}
}
css()
返回带单位的值。现在您正在比较类似这样的内容
('-100px'<0)
。在将值与数字进行比较之前,需要去掉单位。例如:

var rightTriPosition = parseFloat($( 'canvas#tRight.bTri' ).css( "right" ));

如果您不想在比较未通过时执行任何操作,您可以简单地忽略
else

哇,我从来没有想到过这一点。作品谢谢我唯一的问题是,最初计算“正确”值的公式会在用户向上滚动屏幕时自动反转。例如,对象在向下滚动时向左移动,然后在向上滚动时向右移动。该功能已停止使用此解决方案。当对象变为“0”时,它就被冻结了,这样我就可以两全其美了?我使用了else语句,甚至添加了另一个if,但没有运气…请发布与此相关的全部代码,我们将看到它有什么问题。这回答了你原来的问题。。。