为了账号安全,请及时绑定邮箱和手机立即绑定

为什么这段设置背景图位置的代码跳不出if?

为什么这段设置背景图位置的代码跳不出if?

//在.picContainer中创建ul列表,ul列表中for循环添加15个li,根据索引值不同,设置li的背景图位置。 $(function(){ ////加载sprite2///// $(".PicContainer").append("<ul class='Pic'></ul>"); for (var $picIndex = 0; $picIndex <= 14; $picIndex++) { $(".Pic").append("<li></li>"); /// 前3图 if ($picIndex == 0) {                 //这个if如果为true,函数会一直跳不出?????? $(".Pic li").eq($picIndex).css("background-position","0 -1296px"); }; if ($picIndex == 1) { $(".Pic li").eq($picIndex).css("background-position","0 -1512px"); }; if ($picIndex == 2) { $(".Pic li").eq($picIndex).css("background-position","0 -1728px"); }; ///9张正图 if (2 < $picIndex < 12) { var $Position = $picIndex*216+"px"; $(".Pic li").eq($picIndex).css("background-position","0 -$Position"); }; ///后3图 if ($picIndex = 13) { $(".Pic li").eq($picIndex).css("background-position","0 -216px"); }; if ($picIndex = 14) { $(".Pic li").eq($picIndex).css("background-position","0 -432px"); };
查看完整描述

2 回答

?
Joeeeee

TA贡献9条经验 获得超1个赞

还有,这种写法是错误大的,没有这种写法的

 if (2 < $picIndex < 12)

正确的写法应该是

if ($picIndex >2  &&  $picIndex < 12)

判断是正确的,我测试过了,下面的函数可以正确执行

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>if</title>
<script>
for (var i = 0; i < 10; i++) {
   if(i==0){
     alert("i=0");
   };
   if (i<=3){
     alert("i<=3");
   };
   if(i>3 && i<=7){
     alert("i<=7");
   };
   if(i==9){
      alert("i==9");
   };
}
</script>
</head>
<body>
</body>
</html>




查看完整回答
反对 回复 2016-09-07
?
Joeeeee

TA贡献9条经验 获得超1个赞

最明显的一个问题:

//img1.sycdn.imooc.com//57d021670001ce0b05270144.jpg

这里判断条件成了赋值了,应该是

$picIndex==13和$picIndex==14



查看完整回答
反对 回复 2016-09-07
  • 2 回答
  • 0 关注
  • 1588 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信