在图像完全加载之前使用Javascript获取图像尺寸
收藏

我已经阅读过各种各样的方法,在图像完全加载后获取图像尺寸,但是在刚开始加载时,是否可以获取任何图像的尺寸?
我并没有通过搜索(这让我相信这是不可能的),但事实上,浏览器(在我的例子中是firefox)显示了我在标题的新标签中打开的任何图像的尺寸,在它刚开始加载图像后,我希望有一种方法我只是错过了找到它的正确关键词。


最佳答案:

你说得对,一个人可以在图像完全加载之前得到它的尺寸。
这里有一个解决方案(demo):

var img = document.createElement('img');

img.src = 'some-image.jpg';

var poll = setInterval(function () {
    if (img.naturalWidth) {
        clearInterval(poll);
        console.log(img.naturalWidth, img.naturalHeight);
    }
}, 10);

img.onload = function () { console.log('Fully loaded'); }

    公众号
    关注公众号订阅更多技术干货!