如何使用javascript从文件中获取图像尺寸(高度,宽度)

时间:2013-07-17 19:08:46

标签: javascript jquery image

我可能非常愚蠢。但我不能让这个为我的生活工作。 我试图将imgWidth设置为与文件图像宽度相同的宽度(pic_real_width)。

function calculate() {
    var pic_real_width, pic_real_height;
    $("<img/>").attr("src", $("#pp_photo_popUp")[0].src).load(function() {
        pic_real_width = this.width;   // Note: $(this).width() will not
        pic_real_height = this.height; // work for in memory images.
    });
    var imgWidth = 
}

总而言之,我正在尝试创建一个函数来获取硬盘上文件的真实尺寸。

1 个答案:

答案 0 :(得分:4)

绑定加载事件首先,然后执行需要在load事件中加载图像的所有处理。

function calculate(callback) {
    $("<img/>").load(function() {
        var pic_real_width = this.width;   // Note: $(this).width() will not
        var pic_real_height = this.height; // work for in memory images.
        callback(pic_real_width,pic_real_height);
    }).attr("src", $("#pp_photo_popUp")[0].src);
}

calculate(function(width,height) {
    console.log(width,height);
});

如果先设置src,某些版本的IE将立即同步触发加载事件,从而在绑定之前触发它。这就是我换掉订单的原因。另外,我添加了回调参数,因为我稍后会在函数中假设您将返回宽度/高度,由于加载事件的异步性质,这将无法工作。