点击上、下一页显示图片
function onNextBtnBtnClick(e:MouseEvent):void { removePic(); currentPicIndex++; if (currentPicIndex==len) { currentPicIndex=0; } loadPic(arr_picURL[currentPicIndex]); } function onPrevBtnClick(e:MouseEvent):void { removePic(); currentPicIndex--; if (currentPicIndex<0) { currentPicIndex=len-1; } loadPic(arr_picURL[currentPicIndex]); } function removePic():void { var num:int=sprite.numChildren; for (var j:int=0; j<num; j++) { sprite.removeChildAt(0); } }
设置最初默认显示第一张图片,设置currentPicIndex=0。len是图片数目,因此图片索引号范围是:0~len-1。 我们设置每点击一次下一页按钮,currentPicIndex+1,然后再载入当前索引号的图片。注意到,当我们点击第len-1次的时候,刚好是载入最后一张图片(因为图片最大的索引号为len-1),因此当我们再点击下一页按钮,currentPicIndex就等于len了,已经超过了最后一张图片的索引号,因此此时( currentPicIndex==len)要设置currentPicIndex=0,从头开始浏览图片。
同理,下面再来看点击上一页按钮的情况。我们设置每点击一次上一页按钮,currentPicIndex-1,然后再载入该索引号的图片,注意到,当currentPicIndex=0时,此时已经是第一张图片,如果再点击一次,currentPicIndex=-1了,这不在图片索引号范围内,因此此时( currentPicIndex<0)要设置currentPicIndex=len-1。
注意,此处的关键是: 点击按钮后再对索引号进行变化,得到相应的图片索引号,然后再载入图片。
function prevBtnClickedhandler(e:MouseEvent):void { counter--; /*if (counter==-1) { counter=0; } removeMC(); loadPic(counter); */ if (counter>=0) { removeMC(); loadPic(counter); } else { counter=0; } } function nextBtnClickedhandler(e:MouseEvent):void { counter++; /*if (counter==len) { counter=len-1; } removeMC(); loadPic(counter); */ if (counter<=len-1) { removeMC(); loadPic(counter); } else { counter=len-1; } } function removeMC():void { var num:int=picSprite.numChildren; for (var j:int=0; j<num; j++) { picSprite.removeChildAt(0); } }