Heim >Web-Frontend >js-Tutorial >Wie rufe ich Bildabmessungen für die Upload-Validierung in JavaScript ab?

Wie rufe ich Bildabmessungen für die Upload-Validierung in JavaScript ab?

Barbara Streisand
Barbara StreisandOriginal
2024-10-31 10:11:18781Durchsuche

How to Retrieve Image Dimensions for Upload Validation in JavaScript?

Überprüfen der Bildabmessungen für das Hochladen mit Javascript

Bei der Implementierung von Bild-Upload-Formularen in Javascript ist es wichtig sicherzustellen, dass die hochgeladenen Bilder bestimmte Größenanforderungen erfüllen . In diesem Artikel wird ein häufiges Problem bei der Bildgrößenvalidierung untersucht: das Abrufen der Breite und Höhe des ausgewählten Bildes.

Das Problem

Die folgende Javascript-Funktion wurde zur Überprüfung entwickelt Dateityp und -größe, Bildabmessungen können nicht abgerufen werden:

<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>

Die Lösung

Um Bildabmessungen abzurufen, müssen wir ein Bildobjekt aus der ausgewählten Datei erstellen . Dies kann mit der Methode URL.createObjectURL() erreicht werden:

<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>

Dieses Code-Snippet erstellt ein Bildobjekt und lädt die ausgewählte Datei mit img.src. Sobald das Bild geladen ist, wird die Rückruffunktion img.onload ausgeführt, über die wir auf die Breite und Höhe des Bildes zugreifen können.

Kompatibilitätshinweis

Die URL.createObjectURL( )-Methode wird nicht allgemein von allen Browsern unterstützt. Es wird hauptsächlich in Firefox und Chrome unterstützt. Für andere Browser sind möglicherweise alternative Methoden zur Validierung der Bildgröße erforderlich.

Das obige ist der detaillierte Inhalt vonWie rufe ich Bildabmessungen für die Upload-Validierung in JavaScript ab?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn