在FOR循环中仅运行一次IF

时间:2014-09-01 15:08:10

标签: javascript if-statement for-loop thumbnails

我试图通过Pixadelic(link)将缩略图放入Diapo画廊,但我遇到了一个问题。我正在使用下面的代码,我需要IF语句只运行一次,好像没有,计数器将永远保持值0,我希望它每次循环后开始添加1将0应用于其值。有任何想法吗?

if(thumbnails==true) {
        $('#pix_pag').append('<div id="thumb_div"/>');
        var thumbNum;
        var counter;
        for (thumbNum = 0,counter=0; thumbNum < amountSlide; thumbNum++,counter++){ 


            var dataThumb = selector.eq(thumbNum).attr('data-thumb');
            var newImg = new Image();
            newImg.src = dataThumb;
            var leftVal = 25+25*counter;
            var thumbsWidth = $("#pix_pag").width(); 
            var totalVal = 75*(thumbNum+1)+25+25*thumbNum+75;
            var checker = true;

            if(totalVal>=thumbsWidth && checker==true){
                counter=0;
                checker=false;
            }



            $('#thumb_div').append($(newImg).attr({'class':'thumb_nav_'+thumbNum,'style':'position:relative;width:75px;height:75px;top:25px;left:'+leftVal+'px;cursor:pointer;border:solid 1px;box-shadow: 2px 2px 1px #888888;'}));



            }
        }

提前致谢。 :)

1 个答案:

答案 0 :(得分:2)

在循环之前放置var checker = true;。否则,每次循环都会将其设置回true,因此测试&& checker == true将始终成功。