2010-03-10 439 views
1

我有一個寬度爲600像素的div。我想動態地拉動圖像。圖像大小各不相同。我想要做的是,如果圖像大小超過600像素,我們將調整圖像大小爲600像素,以適應div。但如果圖像不超過600像素,我們將保留原始圖像寬度。圖片使用JQUERY自動調整大小/縮放比例

我如何通過使用jQuery來實現?謝謝。

+0

用css,設置最大寬度/ MAX-高度600px的? – 2010-03-10 01:43:58

回答

7

您可以通過給圖像沒有明確的寬度(所以它會使用原來的寬度),並添加以下CSS屬性來做到這一點沒有任何JavaScript:

<img style='max-width: 600px' src='...'> 

警告:不工作在IE 6 Compatibility table

+0

謝謝,我會嘗試這 – spotlightsnap 2010-03-10 01:47:29

+0

謝謝它的作品 – spotlightsnap 2010-03-10 03:27:11

+0

你可能會看到在某些瀏覽器沒有給出一個明確的寬度時,這個問題。特別是如果你嘗試使用一些流行的jQuery插件。但是,也許你的應用程序不適用。 +1的答案。 – jay 2010-03-10 04:47:37

0

可以使用CSS的圖像的寬度設置爲100%,然後使用jQuery這樣保持縱橫比:

$('#containerDiv img').width(); //gets width of image 
$('#containerDiv img').height(); //gets height of image 

你ç進行計算以保持寬高比,然後使用height()屬性設置圖像的新高度。

+0

謝謝,我會試試這個 – spotlightsnap 2010-03-10 01:49:08

2

如果您正在託管這些映像,則可能需要在服務器上將它們擴展到服務器上。這樣你就可以節省帶寬,減少瀏覽器的下載時間,並且不需要在客戶端調整大小。

3

這將幫助你:

$('img').each(function(){ 
    if($(this).width()>600){ 
     $(this).width(600).css('cursor','pointer').click(function(){$(this).css('width','');}); 
    } 
});