2013-01-06 85 views
0

我知道我可以將一個事件偵聽器來加載圖像,這樣,當圖像加載完成這樣它就會產生:JavaScript圖片OnLoad事件

<img id="mine" src="image.jpg" /> 

<script> 
$('#mine').load(function() { 
    console.log($(this).height()); //The image's height 
    console.log($(this).width()); //The image's width 
}) 
</script> 

但我的瀏覽器知道圖像有多大去儘快頭裝入時 - 我能夠領略到該事件,所以,一旦瀏覽器知道圖像的大小,我可以調整我的頁面上的元素?

謝謝!

回答

2

不,你不能。但是,您應該將圖像的尺寸與標籤一起傳遞。

<img id="mine" src="image.jpg" width="100" height="100"> 

例如,在PHP中,您可以使用getimagesize()函數。

它甚至a recommended practice改善瀏覽器的渲染。

+0

不應該'width'和'height'處於'style'屬性? –

+1

@Bagavatu,兩種方法都可行 – Alexander

+1

的'height'和'width'屬性可以「顯得」過時了,但他們比接受。另請參見[圖像寬度/高度作爲屬性或在CSS?](http://stackoverflow.com/questions/640190/image-width-height-as-an-attribute-or-in-css) – Boaz