关闭

简单的切换图片

355人阅读 评论(0) 收藏 举报
分类:

使用内存预载入,图片只需要载入一次,获取图片的原始大小,保证图片不拉伸;

------------------

<body>
<div style="width:500px; height:500px;border:1px solid red; text-align:center;" id="imgbox"></div>
</body>
<script>

function init_img_box(obj){
  if (typeof(obj.imgbox) != 'object'){
    return alert('请设置参数:{imgbox:用于显示的外框html元素对象}');
  }
 
  if (!obj.imgs || !obj.imgs.length){
    return alert('请设置参数:{imgs:[{src:"xxx.gif",text:"图片说明", href:"图片href"}]');
  }
 
  for (var i=0; i < obj.imgs.length; i++){
    obj.imgs[i].image = new Image();
    obj.imgs[i].image.src = obj.imgs[i].src;
  }
 
  if (isNaN(obj.run_sec) || obj.run_sec<1000) obj.run_sec = 1000;
 
  obj.img_i = 0;
  obj.imgbox.innerHTML = '<img src="' + obj.imgs[obj.img_i].src + '" title = "' + obj.imgs[obj.img_i].title + '" ' +
                        (obj.imgs[obj.img_i].image.width > obj.imgs[obj.img_i].image.height?'width=100%':'height=100%') + ' />';
 
  var change_img = function (){  

    var i = obj.img_i++;
    
    if (i >= obj.imgs.length){ i = obj.img_i = 0; }
    document.title = (obj.imgs[i].image.width + ' ' + obj.imgs[i].image.height);
    obj.imgbox.innerHTML = '<img src="' + obj.imgs[i].src + '" title = "' + obj.imgs[i].title + '" ' +
                        (obj.imgs[i].image.width > obj.imgs[i].image.height?'width=100%':'height=100%') + ' />';
  }
 
  var runer = window.setInterval(
    function (){
      change_img();
    },
    obj.run_sec
  );
}  

init_img_box(
  {imgbox:document.getElementById('imgbox'),
   imgs:[
    {src:'http://www.google.com.hk/images/srpr/nav_logo73.png',title:'goo'},
    {src:'http://img.baidu.com/img/image/ilogob.gif',title:'ddd'},
    {src:'http://www.hahouse.gov.cn/three/huxingpic/20071219161240.jpg',title:'ddd'}
   ]
  }
);
</script>

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:974888次
    • 积分:17477
    • 等级:
    • 排名:第564名
    • 原创:819篇
    • 转载:3篇
    • 译文:1篇
    • 评论:43条