2016-02-29 86 views
0

我想添加分页到页面的底部,它允许用户从一组缩略图移动到另一个。该页面是一个图库页面,用户可以单击左侧的缩略图来更改右侧的幻灯片。试图隐藏使用jquery分页缩略图

HTML

<div class="container"> 
<div id="main_area"> 
    <!-- Slider --> 
    <div class="row"> 
     <div class="col-sm-6" id="slider-thumbs firstpage"> 
      <!-- Bottom switcher of slider --> 
      <ul class="hide-bullets"> 
       <li class="col-sm-3"> 
        <a class="thumbnail page-1" id="carousel-selector-0"> 
         <img src="images/thumbnails/img1.jpg"> 
        </a> 
       </li> 

       <li class="col-sm-3"> 
        <a class="thumbnail page-1" id="carousel-selector-1"><img src="images/thumbnails/img2.jpg"></a> 
       </li> 

       <li class="col-sm-3"> 
        <a class="thumbnail page-1" id="carousel-selector-2"><img src="images/thumbnails/img3.jpg"></a> 
       </li> 

       <li class="col-sm-3"> 
        <a class="thumbnail page-1" id="carousel-selector-3"><img src="images/thumbnails/img4.jpg"></a> 
       </li> 

       <li class="col-sm-3"> 
        <a class="thumbnail page-1" id="carousel-selector-4"><img src="images/thumbnails/img5.jpg"></a> 
       </li> 

       <li class="col-sm-3"> 
        <a class="thumbnail page-1" id="carousel-selector-5"><img src="images/thumbnails/img6.jpg"></a> 
       </li> 
       <li class="col-sm-3"> 
        <a class="thumbnail page-1" id="carousel-selector-6"><img src="images/thumbnails/img7.jpg"></a> 
       </li> 

       <li class="col-sm-3"> 
        <a class="thumbnail page-1" id="carousel-selector-7"><img src="images/thumbnails/img8.jpg"></a> 
       </li> 

       <li class="col-sm-3"> 
        <a class="thumbnail page-1" id="carousel-selector-8"><img src="images/thumbnails/img9.jpg"></a> 
       </li> 

       <li class="col-sm-3"> 
        <a class="thumbnail page-1" id="carousel-selector-9"><img src="images/thumbnails/img10.jpg"></a> 
       </li> 
       <li class="col-sm-3"> 
        <a class="thumbnail page-1" id="carousel-selector-10"><img src="images/thumbnails/img11.jpg"></a> 
       </li> 

       <li class="col-sm-3"> 
        <a class="thumbnail page-1" id="carousel-selector-11"><img src="images/thumbnails/img12.jpg"></a> 
       </li> 

       <li class="col-sm-3"> 
        <a class="thumbnail page-1" id="carousel-selector-12"><img src="images/thumbnails/img13.jpg"></a> 
       </li> 

       <li class="col-sm-3"> 
        <a class="thumbnail page-1" id="carousel-selector-13"><img src="images/thumbnails/img14.jpg"></a> 
       </li> 
       <li class="col-sm-3"> 
        <a class="thumbnail page-1" id="carousel-selector-14"><img src="images/thumbnails/img15.jpg"></a> 
       </li> 

       <li class="col-sm-3"> 
        <a class="thumbnail page-1" id="carousel-selector-15"><img src="images/thumbnails/img16.jpg"></a> 
       </li> 
       <li class="col-sm-3"> 
        <a class="thumbnail page-1" id="carousel-selector-16"><img src="images/thumbnails/img17.jpg"></a> 
       </li> 
       <li class="col-sm-3"> 
        <a class="thumbnail page-1" id="carousel-selector-17"><img src="images/thumbnails/img18.jpg"></a> 
       </li> 
       <li class="col-sm-3"> 
        <a class="thumbnail page-1" id="carousel-selector-18"><img src="images/thumbnails/img19.jpg"></a> 
       </li> 
       <li class="col-sm-3"> 
        <a class="thumbnail page-1" id="carousel-selector-19"><img src="images/thumbnails/img20.jpg"></a> 
       </li> 
       <li class="col-sm-3"> 
        <a class="thumbnail page-2 hide-thumbnail" id="carousel-selector-20"><img src="images/thumbnails/img21.jpg"></a> 
       </li> 
      </ul> 
      <nav> 
       <ul class="pagination"> 
       <li> 
        <a aria-label="Previous"> 
        <span aria-hidden="true">&laquo;</span> 
        </a> 
       </li> 
       <li><a id="pag-1">1</a></li> 
       <li><a id="pag-1">2</a></li> 
       <li><a id="pag-3">3</a></li> 
       <li><a id="pag-4">4</a></li> 
       <li><a id="pag-5">5</a></li> 
       <li> 
        <a aria-label="Next"> 
        <span aria-hidden="true">&raquo;</span> 
        </a> 
       </li> 
       </ul> 
      </nav> 
     </div> 

     <div class="col-sm-6"> 
      <div class="col-xs-12" id="slider"> 
       <!-- Top part of the slider --> 
       <div class="row"> 
        <div class="col-sm-12" id="carousel-bounding-box"> 
         <div class="carousel slide" id="myCarousel"> 
          <!-- Carousel items --> 
          <div class="carousel-inner"> 
           <div class="active item" data-slide-number="0"> 
            <img src="images/img1.jpg"></div> 

           <div class="item" data-slide-number="1"> 
            <img src="images/img2.jpg"></div> 

           <div class="item" data-slide-number="2"> 
            <img src="images/img3.jpg"></div> 

           <div class="item" data-slide-number="3"> 
            <img src="images/img4.jpg"></div> 

           <div class="item" data-slide-number="4"> 
            <img src="images/img5.jpg"></div> 

           <div class="item" data-slide-number="5"> 
            <img src="images/img6.jpg"></div> 

           <div class="item" data-slide-number="6"> 
            <img src="images/img7.jpg"></div> 

           <div class="item" data-slide-number="7"> 
            <img src="images/img8.jpg"></div> 

           <div class="item" data-slide-number="8"> 
            <img src="images/img9.jpg"></div> 

           <div class="item" data-slide-number="9"> 
            <img src="images/img10.jpg"></div> 

           <div class="item" data-slide-number="10"> 
            <img src="images/img11.jpg"></div> 

           <div class="item" data-slide-number="11"> 
            <img src="images/img12.jpg"></div> 

           <div class="item" data-slide-number="12"> 
            <img src="images/img13.jpg"></div> 

           <div class="item" data-slide-number="13"> 
            <img src="images/img14.jpg"></div> 

           <div class="item" data-slide-number="14"> 
            <img src="images/img15.jpg"></div> 

           <div class="item" data-slide-number="15"> 
            <img src="images/img16.jpg"></div> 
           <div class="item" data-slide-number="16"> 
            <img src="images/img17.jpg"></div> 
           <div class="item" data-slide-number="17"> 
            <img src="images/img18.jpg"></div> 
           <div class="item" data-slide-number="18"> 
            <img src="images/img19.jpg"></div> 
           <div class="item" data-slide-number="19"> 
            <img src="images/img20.jpg"></div> 
           <div class="item" data-slide-number="20"> 
            <img src="images/img21.jpg"></div> 
          </div> 
          <!-- Carousel nav --> 
          <a class="left carousel-control" href="#myCarousel" role="button" data-slide="prev"> 
           <span class="glyphicon glyphicon-chevron-left"></span> 
          </a> 
          <a class="right carousel-control" href="#myCarousel" role="button" data-slide="next"> 
           <span class="glyphicon glyphicon-chevron-right"></span> 
          </a> 
         </div> 
        </div> 
       </div> 
      </div> 
     </div> 
     <!--/Slider--> 
    </div> 

</div> 
</div> 

CSS

.hide-thumbnail{ 
    display: none; 
} 

.show-thumbnail{ 
    display: block; 
} 

jQuery的

<script type="text/javascript"> 
    jQuery(document).ready(function($) { 

     $('#myCarousel').carousel({ 
       interval: 5000 
     }); 

     //Handles the carousel thumbnails 
     $('[id^=carousel-selector-]').click(function() { 
     var id_selector = $(this).attr("id"); 
     try { 
      var id = /-(\d+)$/.exec(id_selector)[1]; 
      console.log(id_selector, id); 
      jQuery('#myCarousel').carousel(parseInt(id)); 
     } catch (e) { 
      console.log('Regex failed!', e); 
     } 
    }); 
     // When the carousel slides, auto update the text 
     $('#myCarousel').on('slid.bs.carousel', function (e) { 
       var id = $('.item.active').data('slide-number'); 
       $('#carousel-text').html($('#slide-content-'+id).html()); 
     }); 
}); 

function ThumbnailPagination(){ 
    jQuery('#pag-1').live("click", function(){ 
     jQuery('.page-1').removeClass("hide-thumbnail"); 
     jQuery('.page-1').addClass("show-thumbnail"); 
    }); 
    jQuery('#pag-2').live("click", function(){ 
     jQuery('.page-1').removeClass("show-thumbnail"); 
     jQuery('.page-1').addClass("hide-thumbnail"); 
     jQuery('.page-2').removeClass("hide-thumbnail"); 
     jQuery('.page-2').addClass("show-thumbnail"); 
    }); 
}; 

</script> 

我基本上试图隐藏/显示缩略图时,每个<a>分页编号被点击。然而它通常只能使用一次,有时甚至根本不工作。目前只有“1”有效,“2”甚至没有做任何事情。

LINK网站Website Link

+0

你在哪里叫'ThumbnailPagination'?另外,不要使用'live',使用'on'。 'live'会从jquery的更高版本中移除。 – dewd

+0

我想我永远不会调用函数:o我应该在哪里调用它? – Charles

+0

在'jQuery(document).ready'回调函数中。 – Molda

回答

1

我已经解决了我的问题在这里是解决

HTML

<nav> 
       <ul class="pagination"> 
       <li> 
        <a aria-label="Previous"> 
        <span aria-hidden="true">&laquo;</span> 
        </a> 
       </li> 
       <li><a id="pag-1">1</a></li> 
       <li><a id="pag-2">2</a></li> 
       <li> 
        <a aria-label="Next"> 
        <span aria-hidden="true">&raquo;</span> 
        </a> 
       </li> 
       </ul> 
      </nav> 

JQuery的

$(document).ready(function() { 
    $('#pag-1').on("click", ThumbnailPagination1); 
}); 
$(document).ready(function() { 
    $('#pag-2').on("click", ThumbnailPagination2); 
}); 

function ThumbnailPagination1(){ 
    jQuery('.page-1').removeClass("hide-thumbnail"); 
    jQuery('.page-1').addClass("show-thumbnail"); 
    jQuery('.page-2').removeClass("show-thumbnail"); 
    jQuery('.page-2').addClass("hide-thumbnail"); 
    }; 

function ThumbnailPagination2(){ 
    jQuery('.page-1').removeClass("show-thumbnail"); 
    jQuery('.page-1').addClass("hide-thumbnail"); 
    jQuery('.page-2').removeClass("hide-thumbnail"); 
    jQuery('.page-2').addClass("show-thumbnail"); 
    }; 
+0

不错的一个。你不必多次调用'$(document).ready(function(){})'函数。把它保存在一个更清洁。 – dewd