2011-11-14 109 views

回答

13

見這個例子:

沒有預裝

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

目前僅1大圖像,w當點擊A時,A的href被複製爲大圖像的SRC。

活生生的例子:http://jsfiddle.net/Qhdaz/1/

如果你wan't做沒有額外DOM進步,可以加3倍大的圖像,並直接加載它們。上述解決方案不會預載圖像,下面的功能會。

堆載預壓

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

感謝和+1我忘了補充。它也應該在iPad上工作 –

+0

我剛剛檢查它也在iPad上工作。 –

+0

這多次爲'img'的build src添加更多的dom計算。效率不高。 – steveyang

相關問題