1

我有一个 400px x 400px 的大图像和 3 个较小的图像,每个图像都是 100px x 100px。

当您单击其中一个缩略图时,它是否可以与较大的图像交换,本质上是放大它?

4

2 回答 2

1

编辑:

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);    
});​

工作演示

于 2012-08-29T10:15:51.450 回答
0

是的,这是可能的,而且很容易。

你可以做类似的事情

// 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');
});

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

于 2012-08-29T09:37:01.577 回答