是否可以使用Javascript获取外部图像的高度?
答案 0 :(得分:4)
您可以预先加载图像并找到它
var img = document.createElement('img');
img.onload = function () {
console.log(this.height, this.width)
}
img.src = '//placehold.it/64X45'
演示:Fiddle
答案 1 :(得分:4)
无法执行此操作。
您可以使用javascript Image
对象执行此操作:
var image = new Image();
image.onload = function(e) {
alert('Height : ' +e.currentTarget.naturalHeight + ' width:'+e.currentTarget.naturalWidth);
};
image.src = 'link goes here';
答案 2 :(得分:1)
不可能开箱即用。它只会给你mime类型和内容长度。 您必须加载图像以找出其像素宽度和高度。
或者,您可以通过编程方式在响应标头中添加维度(如果您有权访问),然后您可以使用http“HEAD”命令返回标题。
答案 3 :(得分:1)
可能可以使用 ImageInfo - Javascript图像元数据阅读器:
http://blog.nihilogic.dk/2008/08/imageinfo-reading-image-metadata-with.html
(可以获取标题,但根据脚本描述取决于文件类型)
在这里演示:
http://www.nihilogic.dk/labs/imageinfo/
我还没有尝试过,但我记得看过这个并想出类似的方法。它引用了:
由于标题信息通常只占很小的一部分 在图像文件中,有一个选项只能请求多个字节 从文件的开头。设置
ImageInfo.useRanges = true
和ImageInfo.range = <n>
,只有第一个<n>
个字节 下载。但是,由于头信息的位置 JPEG文件不是固定的(也不是任何EXIF数据的大小),这个 已被留作选项。如果您不使用JPEG文件或 如果您知道您的JPEG没有嵌入的缩略图,那么您应该这样做 可以安全地将其设置为仅获得前几个KB左右。