【发布时间】:2011-12-14 22:14:06
【问题描述】:
我的用户可以上传非常大的图像,并且出于裁剪 和显示 的目的,我添加了width 属性,以便它可以很好地适应浏览器窗口。实际图像尺寸可以是 - 比如说 1920 x 1080 像素。
<!-- width added for display purpose -->
<img class="croppable" src="images/fhd.jpg" width="640" />
为了计算真实的选择框尺寸(如果x坐标是20px,那么在原始全高清图片中就是60px)我需要在之前获得完整的图像尺寸 应用width 属性。
问题是这将返回 640 作为值,考虑到宽度属性:
// Important: Use load event to avoid problems with webkit browser like safari
// when using cached images
$(window).load(function(){
$('img.croppable').each(function(){
alert(this.width);
});
});
请不要将此标记为重复,因为我所要求的与简单的图像宽度/高度检索完全不同(实际上有效)。
编辑:Chris G. 解决方案似乎不起作用:
$(window).load(function(){
$('img.croppable').each(function(){
console.log(this.src);
var original = new Image(this.src);
console.log(original);
$("#original_w").text(original.width); // Temp, more images to be added
$("#original_h").text(original.height); // Temp, more images to be added
});
});
控制台输出:
http://localhost/DigitLifeAdminExtension/images/pillars-of-creation.jpg
<img width="0">
【问题讨论】:
标签: javascript jquery jquery-plugins jcrop