这个INdex的值是从多少开始?

这个INdex的值是从多少开始?

这是设置样式的代码:

var getStartNumber = 0;

var setStyle = function(box,top,leftValue,index){

if(getStartNumber >= index){

return false;

};

box.css({

'position': 'absolute',

'top':top,

'left':leftValue,

'opacity': '0'

}).stop().animate({

'opacity': '1'

},2000);

getStartNumber = index;


};

index是值是i传过来的,那 i一开始是0,是不是也就意味着,一开始index的值就是0,那么index = getStartNumber,那么第一个盒子就没设置样式?然后更新getStartNumber的值,第一次更新了之后还是0.第二次i的值是1,也就是index的值是1,那么getStartNumber >= index,不成立,第二个盒子设置样式,然后第二次更新getStartNumber的值为1.也就是说第一盒子其实没有设置样式。从第二个盒子才开始设置样式的,对吧?

正在回答

登陆购买课程后可参与讨论,去登陆

4回答

它会默认放置在盒子的左上角的位置啊

  • 晓白菜 提问者 #1
    那它就没有设置的那些,top和LAFT的值了吗?
    2017-07-19 09:39:53
小丸子爱吃菜 2017-07-19 17:54:09

第一排通过浮动就已经能够自动排好了,不需要添加样式,第二排因为要去找高度最小的进行放置,所以需要设置样式。

  • 提问者 晓白菜 #1
    o ,谢谢了、明白了,老师。辛苦了
    2017-07-19 18:26:01
小丸子爱吃菜 2017-07-19 13:56:20

结合上面的代码去分析的话,如果i<图片的列数,那么图片的高度再加上20px,如果i>=列数时,执行下面的代码,那么也就会执行getStyle(figures[i], minH, figures[minIndex].offsetLeft - 10, i)这个函数,i呢就不会从0开始了,所以还是会有left值和top值的设置。

http://img1.sycdn.imooc.com/climg//596ef47f0001cd1210800433.jpg

  • 提问者 晓白菜 #1
    i不都是从0开始的吗?if这一行的代码的意思,我理解的是这样,比如列数是5,i小于5,那么把图片高度+20放进数组里,当i大于5的时候,执行getStyle函数,也就是说,先把第一列的图片放到数组里,然后判断i大于5了,再为第一组里的图片添加样式。我这样理解对吗?
    2017-07-19 17:45:26
小丸子爱吃菜 2017-07-17 18:13:24

index是从getStyle(figures[i], minH, figures[minIndex].offsetLeft - 10, i);这个调用中传过来的,它位于循环中,从0开始。

祝学习愉快!

  • 提问者 晓白菜 #1
    那就是说第一个盒子没有设置样式了?那它为什么会按照正确的排版方式排版呢?
    2017-07-17 18:42:36
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
前端小白入门系列课程
  • 参与学习           人
  • 提交作业       11218    份
  • 解答问题       36713    个

从一个不会编程的小白到一个老司机是需要过程的,首先得入门,学习基础知识,然后才能进阶,最后再到精通,本专题是你走进前端世界的不二选择!

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师