使用javascript获取文件标记中的图像高度和宽度

使用javascript获取文件标记中的图像高度和宽度,javascript,Javascript,可能的重复项: 如何在文件标签中不刷新页面的情况下获取图像的高度和宽度 <HTML> <HEAD> <TITLE></TITLE> <script language="javascript"> function getW() { var theImg = document.getElementById('testimg'); alert(theImg.width);

可能的重复项:


如何在文件标签中不刷新页面的情况下获取图像的高度和宽度

<HTML>
<HEAD>
    <TITLE></TITLE>
    <script language="javascript">
    function getW()
    {
        var theImg = document.getElementById('testimg');
        alert(theImg.width);
    }

    function getH()
    {
        var theImg = document.getElementById('testimg');
        alert(theImg.height);
    }
    </script>
</HEAD>

<BODY>        
<input type="file" id="testimg"/>
    <input type="button" value="get Width" onclick="getW()"/>
    <input type="button" value="get Height" onclick="getH()"/>
</BODY>
</HTML>

函数getW()
{
var theImg=document.getElementById('testimg');
警报(最大宽度);
}
函数getH()
{
var theImg=document.getElementById('testimg');
警惕(身高);
}

我使用php代码获得图像的高度和宽度,但此时页面将被刷新,没有页面刷新,我获得图像大小,但没有高度和宽度….

使用
onload
事件:

document.getElementById('testimg').onload = function() {
  alert(document.getElementById('testimg').offsetHeight);
}
您可以更改功能中的操作,例如,使按钮由您自己显示或取消禁用


我不确定我是否理解您的问题,但Javascript需要先加载图像,然后才能获取其尺寸。

这是不可能以跨浏览器的方式完成的

我想到的唯一跨浏览器方式(但并不简单)是上传文件ajax样式,渲染图像(可以隐藏),并使用
img.width
img.height
获取其大小


希望这有帮助。干杯

lolwut?两个这样的问题一个接一个?