控制显示和隐藏缩略图翻页按钮

 

控制显示和隐藏缩略图翻页按钮,点击可以查看大图
需      要: 0.0 金币
折      扣: 100 (% 折)
 
相关搜索:  制显示 隐藏 缩略图 翻页按钮 
下载次数: 7
支持一下(1)
100.00%
踩一下(0)
0.00%
  • 下载等级:
  • 编  号: 20120601172146
  • 浏览器兼容IE7.0,IE8.0,IE9.0,Firefox9.0及以前,Firefox10.0,Chrome17.0及以前,Chrome18.0
  • 更新日期: 2012-06-01
  • 大  小: 729.85K
  • 浏览次量: 2674
  • 开发者链接: 官网  演示
  • 相  关: 违规举报
  • 收  藏:( 0 人收藏) 加入收藏
  • 此内容校验人员: sinacomcn
分享到:   
pengbin  
 中尉 上传于/2012-06-01 17:25:49
VIP会员   
   

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head>
<title>控制显示和隐藏缩略图翻页按钮 by 25175</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<meta name="description" content="Minimalistic Slideshow Gallery with jQuery" />
<meta name="keywords" content="minimalistic, slideshow, jquery, gallery, thumbnails, css3"/>
<link rel="shortcut icon" href="../favicon.ico" type="image/x-icon"/>
<link rel="stylesheet" href="css/style.css" type="text/css" media="screen"/>
<style>
body { background:#ddd; font-family:Arial; }
h1 { position:relative; text-indent:-9000px; width:557px; height:103px; margin:20px auto 20px auto; background:transparent url(title.png) no-repeat top left; }
span.reference { position:fixed; left:10px; bottom:10px; font-size:12px; }
span.reference a { color:#666; text-shadow:1px 1px 1px #fff; text-transform:uppercase; text-decoration:none; margin-right:30px; }
span.reference a:hover { color:#333; }
.content { width:700px; margin:0 auto; }
.msg_slideshow { margin:0 auto; }
a.back { background:transparent url(back.png) no-repeat top left; height:13px; width:248px; display:block; clear:both; text-indent:-9000px; margin:20px auto; }
a.back:hover { background-position:0px -13px; }
</style>
</head>
<body>
<div class="content">
<h1>Minimalistic Slideshow Gallery with jQuery</h1>
<div id="msg_slideshow" class="msg_slideshow">
  <div id="msg_wrapper" class="msg_wrapper"> </div>
  <div id="msg_controls" class="msg_controls">
    <!-- right has to animate to 15px, default -110px -->
    <a href="#" id="msg_grid" class="msg_grid"></a> <a href="#" id="msg_prev" class="msg_prev"></a> <a href="#" id="msg_pause_play" class="msg_pause"></a>
    <!-- has to change to msg_play if paused-->
    <a href="#" id="msg_next" class="msg_next"></a> </div>
  <div id="msg_thumbs" class="msg_thumbs">
    <!-- top has to animate to 0px, default -230px -->
    <div class="msg_thumb_wrapper"> <a href="#"><img src="images/thumbs/1.jpg" alt="images/1.jpg"/></a> <a href="#"><img src="images/thumbs/2.jpg" alt="images/2.jpg"/></a> <a href="#"><img src="images/thumbs/3.jpg" alt="images/3.jpg"/></a> <a href="#"><img src="images/thumbs/4.jpg" alt="images/4.jpg"/></a> <a href="#"><img src="images/thumbs/5.jpg" alt="images/5.jpg"/></a> <a href="#"><img src="images/thumbs/6.jpg" alt="images/6.jpg"/></a> </div>
    <div class="msg_thumb_wrapper" style="display:none;"> <a href="#"><img src="images/thumbs/7.jpg" alt="images/7.jpg"/></a> <a href="#"><img src="images/thumbs/8.jpg" alt="images/8.jpg"/></a> <a href="#"><img src="images/thumbs/9.jpg" alt="images/9.jpg"/></a> <a href="#"><img src="images/thumbs/10.jpg" alt="images/10.jpg"/></a> <a href="#"><img src="images/thumbs/11.jpg" alt="images/11.jpg"/></a> <a href="#"><img src="images/thumbs/12.jpg" alt="images/12.jpg"/></a> </div>
    <a href="#" id="msg_thumb_next" class="msg_thumb_next"></a> <a href="#" id="msg_thumb_prev" class="msg_thumb_prev"></a> <a href="#" id="msg_thumb_close" class="msg_thumb_close"></a> <span class="msg_loading"></span>
    <!-- show when next thumb wrapper loading -->
  </div>
</div>
<a href="http://www.25175.com/" class="back">Back to the Codrops Tutorial</a>
<div>
  <div> <span class="reference"> <a href="http://www.25175.com/">25175</a> <a href="http://www.25175.com">Photos by tibchris</a> </span> </div>
</div>


<div style="width:550px;margin:20px auto;">
<p><strong><a href="http://www.25175.com" target="_blank">25175</a></strong> </p>
<p></p>
</div>

<!-- The JavaScript -->
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
<script type="text/javascript">
            $(function() {
    /**
    * interval : time between the display of images
    * playtime : the timeout for the setInterval function
    * current  : number to control the current image
    * current_thumb : the index of the current thumbs wrapper
    * nmb_thumb_wrappers : total number of thumbs wrappers
    * nmb_images_wrapper : the number of images inside of each wrapper
    */
    var interval   = 4000;
    var playtime;
    var current    = 0;
    var current_thumb   = 0;
    var nmb_thumb_wrappers = $('#msg_thumbs .msg_thumb_wrapper').length;
    var nmb_images_wrapper  = 6;
    /**
    * start the slideshow
    */
    play();
    
    /**
    * show the controls when
    * mouseover the main container
    */
    slideshowMouseEvent();
    function slideshowMouseEvent(){
     $('#msg_slideshow').unbind('mouseenter')
            .bind('mouseenter',showControls)
            .andSelf()
            .unbind('mouseleave')
            .bind('mouseleave',hideControls);
     }
    
    /**
    * clicking the grid icon,
    * shows the thumbs view, pauses the slideshow, and hides the controls
    */
    $('#msg_grid').bind('click',function(e){
     hideControls();
     $('#msg_slideshow').unbind('mouseenter').unbind('mouseleave');
     pause();
     $('#msg_thumbs').stop().animate({'top':'0px'},500);
     e.preventDefault();
    });
    
    /**
    * closing the thumbs view,
    * shows the controls
    */
    $('#msg_thumb_close').bind('click',function(e){
     showControls();
     slideshowMouseEvent();
     $('#msg_thumbs').stop().animate({'top':'-230px'},500);
     e.preventDefault();
    });
    
    /**
    * pause or play icons
    */
    $('#msg_pause_play').bind('click',function(e){
     var $this = $(this);
     if($this.hasClass('msg_play'))
      play();
     else
      pause();
     e.preventDefault(); 
    });
    
    /**
    * click controls next or prev,
    * pauses the slideshow,
    * and displays the next or prevoius image
    */
    $('#msg_next').bind('click',function(e){
     pause();
     next();
     e.preventDefault();
    });
    $('#msg_prev').bind('click',function(e){
     pause();
     prev();
     e.preventDefault();
    });
    
    /**
    * show and hide controls functions
    */
    function showControls(){
     $('#msg_controls').stop().animate({'right':'15px'},500);
    }
    function hideControls(){
     $('#msg_controls').stop().animate({'right':'-110px'},500);
    }
    
    /**
    * start the slideshow
    */
    function play(){
     next();
     $('#msg_pause_play').addClass('msg_pause').removeClass('msg_play');
     playtime = setInterval(next,interval)
    }
    
    /**
    * stops the slideshow
    */
    function pause(){
     $('#msg_pause_play').addClass('msg_play').removeClass('msg_pause');
     clearTimeout(playtime);
    }
    
    /**
    * show the next image
    */
    function next(){
     ++current;
     showImage('r');
    }
    
    /**
    * shows the previous image
    */
    function prev(){
     --current;
     showImage('l');
    }
    
    /**
    * shows an image
    * dir : right or left
    */
    function showImage(dir){
     /**
     * the thumbs wrapper being shown, is always
     * the one containing the current image
     */
     alternateThumbs();
     
     /**
     * the thumb that will be displayed in full mode
     */
     var $thumb = $('#msg_thumbs .msg_thumb_wrapper:nth-child('+current_thumb+')')
        .find('a:nth-child('+ parseInt(current - nmb_images_wrapper*(current_thumb -1)) +')')
        .find('img');
     if($thumb.length){
      var source = $thumb.attr('alt');
      var $currentImage = $('#msg_wrapper').find('img');
      if($currentImage.length){
       $currentImage.fadeOut(function(){
        $(this).remove();
        $('<img />').load(function(){
         var $image = $(this);
         resize($image);
         $image.hide();
         $('#msg_wrapper').empty().append($image.fadeIn());
        }).attr('src',source);
       });
      }
      else{
       $('<img />').load(function(){
         var $image = $(this);
         resize($image);
         $image.hide();
         $('#msg_wrapper').empty().append($image.fadeIn());
       }).attr('src',source);
      }
        
     }
     else{ //this is actually not necessary since we have a circular slideshow
      if(dir == 'r')
       --current;
      else if(dir == 'l')
       ++current; 
      alternateThumbs();
      return;
     }
    }
    
    /**
    * the thumbs wrapper being shown, is always
    * the one containing the current image
    */
    function alternateThumbs(){
     $('#msg_thumbs').find('.msg_thumb_wrapper:nth-child('+current_thumb+')')
         .hide();
     current_thumb = Math.ceil(current/nmb_images_wrapper);
     /**
     * if we reach the end, start from the beggining
     */
     if(current_thumb > nmb_thumb_wrappers){
      current_thumb  = 1;
      current   = 1;
     } 
     /**
     * if we are at the beggining, go to the end
     */     
     else if(current_thumb == 0){
      current_thumb  = nmb_thumb_wrappers;
      current   = current_thumb*nmb_images_wrapper;
     }
     
     $('#msg_thumbs').find('.msg_thumb_wrapper:nth-child('+current_thumb+')')
         .show(); 
    }
    
    /**
    * click next or previous on the thumbs wrapper
    */
    $('#msg_thumb_next').bind('click',function(e){
     next_thumb();
     e.preventDefault();
    });
    $('#msg_thumb_prev').bind('click',function(e){
     prev_thumb();
     e.preventDefault();
    });
    function next_thumb(){
     var $next_wrapper = $('#msg_thumbs').find('.msg_thumb_wrapper:nth-child('+parseInt(current_thumb+1)+')');
     if($next_wrapper.length){
      $('#msg_thumbs').find('.msg_thumb_wrapper:nth-child('+current_thumb+')')
          .fadeOut(function(){
           ++current_thumb;
           $next_wrapper.fadeIn();         
          });
     }
    }
    function prev_thumb(){
     var $prev_wrapper = $('#msg_thumbs').find('.msg_thumb_wrapper:nth-child('+parseInt(current_thumb-1)+')');
     if($prev_wrapper.length){
      $('#msg_thumbs').find('.msg_thumb_wrapper:nth-child('+current_thumb+')')
          .fadeOut(function(){
           --current_thumb;
           $prev_wrapper.fadeIn();         
          });
     }    
    }
    
    /**
    * clicking on a thumb, displays the image (alt attribute of the thumb)
    */
    $('#msg_thumbs .msg_thumb_wrapper > a').bind('click',function(e){
     var $this   = $(this);
     $('#msg_thumb_close').trigger('click');
     var idx   = $this.index();
     var p_idx  = $this.parent().index();
     current   = parseInt(p_idx*nmb_images_wrapper + idx + 1);
     showImage();
     e.preventDefault();
    }).bind('mouseenter',function(){
     var $this   = $(this);
     $this.stop().animate({'opacity':1});
    }).bind('mouseleave',function(){
     var $this   = $(this); 
     $this.stop().animate({'opacity':0.5});
    });
    
    /**
    * resize the image to fit in the container (400 x 400)
    */
    function resize($image){
     var theImage  = new Image();
     theImage.src  = $image.attr("src");
     var imgwidth  = theImage.width;
     var imgheight  = theImage.height;
     
     var containerwidth  = 400;
     var containerheight = 400;
               
     if(imgwidth > containerwidth){
      var newwidth = containerwidth;
      var ratio = imgwidth / containerwidth;
      var newheight = imgheight / ratio;
      if(newheight > containerheight){
       var newnewheight = containerheight;
       var newratio = newheight/containerheight;
       var newnewwidth =newwidth/newratio;
       theImage.width = newnewwidth;
       theImage.height= newnewheight;
      }
      else{
       theImage.width = newwidth;
       theImage.height= newheight;
      }
     }
     else if(imgheight > containerheight){
      var newheight = containerheight;
      var ratio = imgheight / containerheight;
      var newwidth = imgwidth / ratio;
      if(newwidth > containerwidth){
       var newnewwidth = containerwidth;
       var newratio = newwidth/containerwidth;
       var newnewheight =newheight/newratio;
       theImage.height = newnewheight;
       theImage.width= newnewwidth;
      }
      else{
       theImage.width = newwidth;
       theImage.height= newheight;
      }
     }
     $image.css({
      'width' :theImage.width,
      'height':theImage.height
     });
    }
            });
        </script>
</body>
</html>

 购买记录
1990-10-19
新兵
259876lr
新兵
rg0606
新兵
刘涛_90
新兵
renyuan2ni
新兵
ssshh
新兵
triton
新兵
会员评论:  

一、不得利用本站危害国家安全、泄露国家秘密,不得侵犯国家社会集体的和公民的合法权益,不得利用本站制作、复制和传播不法有害信息!

二、互相尊重,对自己的言论和行为负责。

  验证码:
 
反馈请帮助我们提高!意见反馈