How to show/hide big image by clicking on thumbnails?

前端 未结 1 1187
你的背包
你的背包 2021-01-01 05:41

How to show/hide big image by clicking on thumbnails?

I need like this

\"enter

相关标签:
1条回答
  • 2021-01-01 06:41

    See this example:

    No preloading

    HTML:

    <div id="big-image">
        <img src="http://lorempixel.com/400/200/sports/1/">
    </div>
    
    <div class="small-images">
        <a href="http://lorempixel.com/400/200/sports/1/"><img src="http://lorempixel.com/100/50/sports/1/"></a>
    <a href="http://lorempixel.com/400/200/fashion/1/" class=""><img src="http://lorempixel.com/100/50/fashion/1/"></a>
    <a href="http://lorempixel.com/400/200/city/1/"><img src="http://lorempixel.com/100/50/city/1/"></a>
    </div>
    

    Javascript (jQuery)

    $(function(){
        $(".small-images a").click(function(e){
            var href = $(this).attr("href");
            $("#big-image img").attr("src", href);
            e.preventDefault();
            return false;
        });
    });
    

    Currently only 1 big image, when clicking on an A, the href of the A is copied as SRC of the big image.

    Live example: http://jsfiddle.net/Qhdaz/1/

    If you wan't to do it without the extra DOM progressing, you can add 3 big images, and load them directly. The above solution does not preload the images, the below function will.

    With preloading

    HTML:

    <div id="big-image">
        <img src="http://lorempixel.com/400/200/sports/1/">
        <img src="http://lorempixel.com/400/200/fashion/1/">
        <img src="http://lorempixel.com/400/200/city/1/">
    </div>
    
    <div class="small-images">
        <img src="http://lorempixel.com/100/50/sports/1/">
        <img src="http://lorempixel.com/100/50/fashion/1/">
        <img src="http://lorempixel.com/100/50/city/1/">
    </div>
    

    Javascript:

    $(function(){
        $("#big-image img:eq(0)").nextAll().hide();
        $(".small-images img").click(function(e){
            var index = $(this).index();
            $("#big-image img").eq(index).show().siblings().hide();
        });
    });
    

    http://jsfiddle.net/Qhdaz/2/

    0 讨论(0)
提交回复
热议问题