SOLUCIONADO: Sintaxis-error
El siguiente código funciona:¿Cómo obtener el tamaño original de una imagen -Jquery
var image = {width:0,height:0};
var imageObject = new Image();
function getImageSize(id) {
imageObject.src = id.attr("src");
image.width = imageObject.width;
image.height = imageObject.height;
}
pregunta original
quiero para obtener el ancho y el alto originales de una imagen y probar diferentes códigos para lograrlo. Mi función se activa al hacer clic y todas las imágenes cambian de tamaño a 400x300.
Me trataron de cambiar el tamaño de la imagen a su tamaño original mediante el uso de auto
:
var image = {width:0,heigth:0};
function getImageSize(id) {
id.css({
'width': 'auto',
'heigth': 'auto'
});
image.width = id.attr('width');
image.heigth = id.attr('heigth');
}
Colocación auto
no cambió el tamaño de la imagen.
alert(id.attr('width'));
siempre devuelve 'indefinido'. por lo que no funciona
var image = {width:0,heigth:0};
var imageObject = new Image();
function getImageSize(id) {
imageObject.src = id.attr("src");
image.width = imageObject.width;
image.heigth = imageObject.heigth;
}
alert(image.width);
funciona a la perfección.
alert(image.heigth);
returns undefined.
El uso de imageObject.naturalWidth
funciona como el de arriba - el ancho se da correctamente pero la altura no está definida.
He leído que tiene que agregar el nuevo objeto de imagen, pero cuando uso imageObject.appendTo('body');
ni siquiera puedo hacer clic en la imagen.
Gracias por cualquier sugerencia.
Una vez que se cambia el tamaño de la imagen, auto no va a traer de vuelta otra vez. En cuanto a obtener el tamaño de la imagen, primero debe cargarse. – adeneo
error de sintaxis 'image.heigth':" altura " –
oh, lo escribí mal muchas veces, cambiando la sintaxis lo resolvió – CadanoX