HTML5 -, wie man die Bildgröße
Habe ich dieses Skript, die verwendet wird, um das abrufen der Höhe und Breite des browser hochgeladene Bild.
Referenz: http://renevier.net/misc/resizeimg.html
function createReader(file) {
reader.onload = function(evt) {
var image = new Image();
image.onload = function(evt) {
var width = this.width;
var height = this.height;
alert (width); //will produce something like 198
};
image.src = evt.target.result;
};
reader.readAsDataURL(file);
}
for (var i = 0, length = input.files.length; i < length; i++) {
createReader(input.files[i]);
}
Möchte ich den Zugriff auf den Wert der Breite und Höhe, die von außerhalb der createReader
Funktion. Wie kann ich das tun?
ähm... haben
die var Breite und Höhe können nur den Zugriff innerhalb des Bildes.onload-Funktion, die ist, warum ich konnte nicht "etwas zurückgeben"
Kannst du nicht die Variablen erstellen
können Sie genauer erklären oder ein Beispiel geben?
das will einfach nicht funktionieren ...
createReader
etwas zurückgeben. Das ist ein guter start.die var Breite und Höhe können nur den Zugriff innerhalb des Bildes.onload-Funktion, die ist, warum ich konnte nicht "etwas zurückgeben"
Kannst du nicht die Variablen erstellen
width
und height
in den Bereich, wo Sie wollen zu Ihnen zurückkehren, wie die createReader
Funktion?können Sie genauer erklären oder ein Beispiel geben?
das will einfach nicht funktionieren ...
InformationsquelleAutor angry kiwi | 2011-03-02
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ändern "createReader", so dass Sie eine handler-Funktion aufgerufen wird, wenn das Bild verfügbar ist:
Nun, wenn Sie es nennen, Sie können übergeben, in einer Funktion zu tun, was Sie wollen, um mit dem Bild fertig, Maße:
auch eine Menge von APIs wie, die sind asynchron - wenn Sie Sie nennen, eine Abfolge von Ereignissen in Bewegung gesetzt, aber es muss nicht alles sofort geschehen. Die "callback" - Mechanismus können Sie im Ort code ausgeführt werden, wenn ein langfristiger Vorgang abgeschlossen ist. Netzwerk-Operationen, Datei-system-Interaktionen und andere Sachen wie, dass ist asynchron, weil solche Dinge umfassen hardware-Realitäten, die nicht unmittelbar auf.
InformationsquelleAutor Pointy