值不会在setInterval中重置

Lor*_*Huz 2 jquery

我在屏幕上移动了一个绝对的div.当div退出屏幕时我重置了值,这是代码:

    setInterval( function() {
        if( p2.offset().top <= 1 ) {
             p2.css('bottom','50').css('left','400');
        }
        p2.css('bottom', '+=1').css('left', '+=1');
    }, 10 );
Run Code Online (Sandbox Code Playgroud)

当我在if条件中发出警报时,我看到此警报,但代码p2.css('bottom','50').css('left','400')似乎没有执行... div继续移动到屏幕外而不重置at bottom: 50pxleft: 400px.

我哪里错了?

Geo*_*rge 5

指定你的单位,它会起作用:

p2.css('bottom','50px').css('left','400px');
Run Code Online (Sandbox Code Playgroud)

或者,将对象传递给css()方法:

p2.css({bottom:50, left:400});
Run Code Online (Sandbox Code Playgroud)

这假设您正在谈论像素.

的jsfiddle