簡體   English   中英

獲取圖像寬度和高度

[英]Get image width and height

當沒有指定樣式時,我需要在 javascript (jQuery) 中獲取圖像的尺寸(jQuery 的 css() 返回 0)。

也許是因為我在詢問其尺寸之前正在使用 jQuery 加載圖像。 如果是這種情況,是否有任何事件可以告訴我們何時加載圖像?

也許圖像尚未完全加載,因此無法給出尺寸。但是如果沒有您的代碼,我無法判斷您做錯了什么,但這里有一個可以工作的示例

function LoadImage(isrc) {
    var oImg = new Image();
    oImg.src = isrc;
    if (oImg.complete) {
        window.alert(oImg.src + ' ' + oImg.width + ' x ' + oImg.height);
    }
    else {
        window.setTimeout('iLoad(imgsrc)', 1000);
    }
}

<body onLoad='LoadImage(imgsrc)'>

這是一個有幫助的鏈接,看看演示: http : //docs.jquery.com/Events/load

使用 jquery 有一個 load() 事件,當圖像加載完成時會觸發,即:

<script type="text/javascript">
    $(document).ready(function()
    {
        $('#theImage').load(function()
        {
            // do the stuff here.
        });
    });
</script>


<img src="blah.jpg" id="theImage" />

根據您在 image.width 或 image.naturalWidth(和高度等價物)之后的內容,width/height 給出了圖像標簽上的寬度/高度屬性,naturalWidth/Height 給出了實際底層圖像的尺寸。

加載圖像后,您可以使用img 的 onload獲取尺寸:

<img src="..." onload="getDimensions(this)" />

您可以嘗試結合karim79John Boker的答案。 嘗試將圖像預加載到隱藏的 DOM 中,當它加載時,您可以嘗試獲取其寬度和高度。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM