How to show/hide big image by clicking on thumbnails?
I need like this
Try with JSFiddle here /
Is it possible with CSS only. if not then jQuery solution is OK.
An is it good to use <a href=#">
even it's not opening any new page in same or new tab.
Edit:
I forgot to add. it should work on iPad too
How to show/hide big image by clicking on thumbnails?
I need like this
Try with JSFiddle here http://jsfiddle/jitendravyas/Qhdaz/
Is it possible with CSS only. if not then jQuery solution is OK.
An is it good to use <a href=#">
even it's not opening any new page in same or new tab.
Edit:
I forgot to add. it should work on iPad too
Share Improve this question edited Nov 14, 2011 at 12:42 Jitendra Vyas asked Nov 14, 2011 at 12:35 Jitendra VyasJitendra Vyas 153k239 gold badges585 silver badges866 bronze badges 1- Try these examples: javatpoint./jquery-photo-gallery-with-thumbnail, jqueryscript/gallery/… – shasi kanth Commented Mar 29, 2023 at 8:12
1 Answer
Reset to default 15See this example:
No preloading
HTML:
<div id="big-image">
<img src="http://lorempixel./400/200/sports/1/">
</div>
<div class="small-images">
<a href="http://lorempixel./400/200/sports/1/"><img src="http://lorempixel./100/50/sports/1/"></a>
<a href="http://lorempixel./400/200/fashion/1/" class=""><img src="http://lorempixel./100/50/fashion/1/"></a>
<a href="http://lorempixel./400/200/city/1/"><img src="http://lorempixel./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/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./400/200/sports/1/">
<img src="http://lorempixel./400/200/fashion/1/">
<img src="http://lorempixel./400/200/city/1/">
</div>
<div class="small-images">
<img src="http://lorempixel./100/50/sports/1/">
<img src="http://lorempixel./100/50/fashion/1/">
<img src="http://lorempixel./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/Qhdaz/2/