用较大的图像交换缩略图

Swap thumbnail images with larger image?

本文关键字:交换 略图 图像      更新时间:2023-09-26

我有一个400px x 400px的大图像和下面的三个小图像,每个图像都是100px x 100px。

当你点击其中一个缩略图时,它会与较大的图像交换,从而放大它,这可能吗?

编辑:

HTML:

<div id="imgThumbs">
    <a href="#" class="showImg"><img src="img1-thumb.jpg" width="100" height="100" alt="Image 1" /></a>
    <a href="#" class="showImg"><img src="img2-thumb.jpg" width="100" height="100" alt="Image 2" /></a>
    <a href="#" class="showImg"><img src="img3-thumb.jpg" width="100" height="100" alt="Image 3" /></a>    
</div>
<div id="imgHolder"></div>

CSS:

#imgThumbs {  
    overflow: hidden;
    margin: 20px auto;
    width: 366px;
    text-align: center;
}
.showImg { 
    width: 100px; 
    padding: 10px; 
    float:left; 
    border: 1px solid #fff;
    border-radius: 5px;    
}
#imgHolder {
    border-top: 5px solid #bbb;
    padding: 20px;
    margin: 0 auto;
    width: 80%;
}
.active {
    border: 1px dashed #aaa;
    background-color: #f4f4f4;
}

jQuery:

$('.showImg').hover(function(){        
    $(".showImg").removeClass("active");
    $(this).addClass("active");
    var imgURL = $(this).find('img').attr("src");    
    $('#imgHolder').find('img').attr("src", imgURL);    
});​

工作演示

是的,这是可能的,也很容易。

你可以做一些类似的事情

// small images have the class 'small'
$('img.small').click(function(){
    this.src = 'path to big image';
});

通常使用文件命名约定。所以你的代码可能是

$('img.small').click(function(){
    // changes the source of small images
    // from somepath.png to somepath-big.png
    this.src = this.src.split('.')[0]+'-big.png';
    $(this).removeClass('small');
});

但你必须决定你到底想做什么…