限制图像循环显示

时间:2012-11-05 04:54:02

标签: php javascript function

以下代码已被建议但不完全正常运行:-(。我想在点击时显示一个图像数组(var imgs),在数组末尾返回第一个img = 1.任何帮助都将不胜感激。谢谢。             限制图像显示      

 var imgs = ["'pic1lg.jpg","pic2lg.jpg","pic3lg.jpg","pic4lg.jpg","pic5lg.jpg"];
 var baseURL = 'images/art_contests/2005/';

 var x=imgs.length;
 function change(){
 if (x>0) { document.getElementById("bob").src=baseURL+imgs[--x]; } 
 }
 window.onload = function() { change(); }
 </script>
 </head>
 <body>
 <img src="" id="bob" alt="" onmousedown="change()">
 </body>

正如旁注,什么是“鲍勃”?

3 个答案:

答案 0 :(得分:1)

<script>

var imgs = ["pic1lg.jpg","pic2lg.jpg","pic3lg.jpg","pic4lg.jpg","pic5lg.jpg"];
 var baseURL = 'images/art_contests/2005/';

 var imagesLength= imgs.length;
 var current = imgs.length;
 function change(img){
    if(current <= 0)
        current = imagesLength;
    img.src=baseURL+imgs[--current];
 }
 window.onload = function() { change(); }
;
 </script>
 </head>
 <body>
 <img src="" id="bob" alt="" onmousedown="change(this)">
 </body>

答案 1 :(得分:0)

如果您希望它回滚到开头,则必须在x小于0时重置该值。

if (x < 0) {
  x = imgs.length - 1;
}
document.getElementById("bob").src = baseURL+imgs[x--];

这样做是在更改图像之前检查x的值,如果它小于0(0是第一个图像),则将其设置为小于数组长度的一个(数组索引为0-基于最后一项的索引为length-1)。

答案 2 :(得分:-1)

尝试这一个 我为所选的当前阵列添加了一个国家/地区。

<script>
var imgs = ["'pic1lg.jpg","pic2lg.jpg","pic3lg.jpg","pic4lg.jpg","pic5lg.jpg"];
var baseURL = 'images/art_contests/2005/';

 var x=imgs.length;
 var latest = 0;
 function change(){

    if (x>0) { 
        if(latest < x){
            document.getElementById("bob").src=baseURL+imgs[latest];
            latest++;
        }else{
         latest = 0;    
        }
    } 
 }

 </script>
 </head>
 <body>
 <input type="button" onclick="change()"/>
 <img src="" id="bob" alt="" onclick="change()">
 </body>