因为onreadystatechange  是状态改变的时候
readyState触发的事件是 如果 图片加载完成了 
可以把 这个 js 加在最后面
就是《/body》 上面 然后把if (image.readyState=="complete") {
 去掉

解决方案 »

  1.   

    解决:在第一次加载onreadystatechange 最后面加个开关变量
    如果是第一次 肯定会改变这个变量 第二次以后 就是只判断这个变量
    <script>
    //取得图片宽高
    function GetImageSize(p_image){
    var image = new Image();
    var o_ready;
    image.src = p_image;
    image.onreadystatechange=function(){ //onreadystatechange
    if (image.readyState=="complete") {
    imageW=image.width;
    imageH=image.height;
    alert(imageW);
    alert(imageH);
    }
    o_ready="ok";
    }
    if (image.readyState=="complete" || o_ready!="ok") {
    imageW=image.width;
    imageH=image.height;
    alert(imageW);
    alert(imageH);
    }
    o_ready="";
    }
    </script> <input id=inp type="file" size="20">
    <br>
    <button onclick="GetImageSize(inp.value)">GetImageSize</button>
      

  2.   

    刚发错 | 应该改为 &