Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/81.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 减少svg内部循环上的x值_Javascript_Jquery_Svg - Fatal编程技术网

Javascript 减少svg内部循环上的x值

Javascript 减少svg内部循环上的x值,javascript,jquery,svg,Javascript,Jquery,Svg,此代码应(缓慢地)将带有x=“4”的svg框移动到x=“400”。我用js使用了一个简单的循环,并用jquery设置它 站点加载后,该框应立即开始向下移动,但它似乎卡在了一个地方 $(函数(){ var i; var down=setInterval(函数(){ 下移 }, 250); 函数move_down(){ 对于(i=4,i

此代码应(缓慢地)将带有
x=“4”
的svg框移动到
x=“400”
。我用js使用了一个简单的循环,并用jquery设置它

站点加载后,该框应立即开始向下移动,但它似乎卡在了一个地方


$(函数(){
var i;
var down=setInterval(函数(){
下移
}, 250);
函数move_down(){
对于(i=4,i<400,i++){
$(“#绿色块”).attr({
y:我
});
}
}
});
正文{
保证金:0;
溢出:隐藏;
}
svg{
背景色:黑色;
宽度:100vw;
高度:100vh;
}
#布洛克绿{
填充:黑色;
行程:#00ff00;
笔划宽度:.5px;
}

您只需要更改i的递增方式(不需要for循环,因为set interval正在执行这里的循环)。此外,for循环语句中有逗号,这只会导致所有代码都无法运行(JS使用分号)

$(函数(){
var i=4;
var down=设置间隔(向下移动,250);
函数move_down(){
$(“#绿色块”).attr({
y:我
});
我++
}
});
正文{
保证金:0;
溢出:隐藏;
}
svg{
背景色:黑色;
宽度:100vw;
高度:100vh;
}
#布洛克绿{
填充:黑色;
行程:#00ff00;
笔划宽度:.5px;
}


对于初学者,您是否检查了控制台中的错误?因为您有一些。for
循环的
部分需要用分号分隔,而不是逗号:
for(i=4;i<400;i++)
。这是语法错误,逻辑错误在@JoshuaFerge的回答中有解释。
function(){move_down()}
没有意义,就像
move_down
@Andrey谢谢,我遵循了w3schools的格式