Javascript 检查div';它的边距比每秒钟移动一次大
Javascript 检查div';它的边距比每秒钟移动一次大,javascript,jquery,html,css,Javascript,Jquery,Html,Css,div应移动9次,然后停止。问题是它只移动一次。有人有办法解决这个问题吗?谢谢 $(文档).ready(函数(){ var-id=1; 设置间隔(移动,1000); 函数move(){ 如果($(“.block”).css(“左边距”)
div
应移动9次,然后停止。问题是它只移动一次。有人有办法解决这个问题吗?谢谢
$(文档).ready(函数(){
var-id=1;
设置间隔(移动,1000);
函数move(){
如果($(“.block”).css(“左边距”)<“100px”){
$(“.block”).animate({marginLeft:+=10px});
}
}
});代码>
.block{
填充:15px;
背景颜色:橙色;
浮动:左;
盒影:0px 2px 2px#b1b1b1b1;
显示:块;
左边距:0px;
}
“Npx”<“100px”
将不起作用<那些是弦强>
您应该使用parseInt()
将一些左边距
字符串转换为数字,您可以使用<100
进行比较
另外,您不需要使用setInterval()
,可以使用.animate()
回调调用移动
函数
$(文档).ready(函数(){
(功能移动(){
if(parseInt($(“.block”).css(“左边距”),10)<100){
$(“.block”).delay(1000).animate({marginLeft:“+=10px”},move);
}
}());
});代码>
.block{
填充:15px;
背景颜色:橙色;
浮动:左;
盒影:0px 2px 2px#b1b1b1b1;
左边距:0px;
}
1。您没有将其循环9次,只执行一次。2.即使循环,if语句也被限制为100px,所以不会发生任何事情代码>