首頁  >  文章  >  web前端  >  如何在 JavaScript 中檢索圖像尺寸以進行上傳驗證?

如何在 JavaScript 中檢索圖像尺寸以進行上傳驗證?

Barbara Streisand
Barbara Streisand原創
2024-10-31 10:11:18676瀏覽

How to Retrieve Image Dimensions for Upload Validation in JavaScript?

使用Javascript 驗證上傳的圖像尺寸

在Javascript 中實現圖像上傳表單時,確保上傳的圖像滿足特定的尺寸要求至關重要。本文探討了影像尺寸驗證過程中面臨的常見問題:檢索所選影像的寬度和高度。

問題

以下Javascript 函數,旨在檢查檔案類型和大小,無法擷取影像尺寸:

<code class="javascript">function checkPhoto(target) {
    if(target.files[0].type.indexOf("image") == -1) {
        // Code to handle file type
    }
    if(target.files[0].size > 102400) {
        // Code to handle image size
    }
    // No code yet for image width and height
}</code>

The解決方案

要擷取影像尺寸,我們需要從所選檔案建立一個影像物件。這可以使用 URL.createObjectURL() 方法來實現:

<code class="javascript">var _URL = window.URL || window.webkitURL;
$(function() {
    $("#file").change(function (e) {
        var file, img;
        if ((file = this.files[0])) {
            img = new Image();
            var objectUrl = _URL.createObjectURL(file);
            img.onload = function () {
                console.log(this.width + " " + this.height);
                _URL.revokeObjectURL(objectUrl);
            };
            img.src = objectUrl;
        }
    });
});</code>

此程式碼片段建立一個 Image 物件並使用 img.src 載入所選檔案。圖片載入完成後,會執行回呼函數 img.onload,我們可以在其中取得圖片的寬度和高度。

相容性說明

URL.createObjectURL( ) 方法並未得到跨瀏覽器的普遍支援。它主要在 Firefox 和 Chrome 中受支援。對於其他瀏覽器,可能需要替代方法來驗證圖片大小。

以上是如何在 JavaScript 中檢索圖像尺寸以進行上傳驗證?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn