这段代码有什么问题

Fre*_*nöw 6 html javascript jquery image

function moveit() {

    var newTop = Math.floor(Math.random()*350);
    var newLeft = Math.floor(Math.random()*1024);
    var newDuration = 9000

    $('#friends').animate({
      top: newTop,
      left: newLeft,
 !!! -->     width: "+="+((newTop-$('friends').css('top'))*3),
      }, newDuration, function() {
        moveit();
      });

}

$(document).ready(function() {
    moveit();
});
Run Code Online (Sandbox Code Playgroud)

它应该使图像飞来飞去(工作).我添加了标有"!!! - >"的行,它应该使图像越接近页面底部.

我做错了什么?代码不会抛出任何错误.

Jim*_*mmy 5

$('friends').css('top') 返回一个字符串,您需要先将其转换为int,然后才能使用它减去 newTop

parseInt($('friends').css('top'), 10)
Run Code Online (Sandbox Code Playgroud)

会做的伎俩

另外你需要使用一个ID或类标识符在你的jQuery选择,无论是'#friends''.friends',但我想象你正在寻找的东西与朋友的ID

试试这个

width: "+="+((newTop - parseInt($('#friends').css('top'), 10))*3),
Run Code Online (Sandbox Code Playgroud)