不用fso,是因为IE总是弹出安全提示

解决方案 »

  1.   

    好象不对.你这样只支持IE的,firefox 你这就不行了,
    在说了img 好象没有fileSize这方法我来写个
    <script type = 'text/javascript' />
       function checkImg(obj) // obj 是页,面传递过来的 type = file HTML Element
       {
            var url ;
            if(window.navigator.appName.indexOf("MSIE")>=1) //IE
             {
                 url = obj.value;
             }
              else // firefox;
               url = obj.files.item(0).getAsDataURL();
           imgObj = new Image();
           imgObj.src  = url;
           boolean loadstate = false;
           imgObj.onerror = function()
                {
                  loadstate = true;
                  alert('图片类型不对,加载图片失败.');
                }
            if(loadstate)return;
            else
           if(imgObj.width > 120 || imgObj.height > 120){ // 我这里面判断是高度.
    alert('图片高度和宽度不能超过120像素');
    return ;                     
    }
            
       }
    </script>
      

  2.   

    这个方法本应该不错,但在实际使用过程中,返回值是有问题的,我在使用过程中,如果new个image对象的话,是获取不到返回值的。例如我们把判断图片大小放到function checksize里面。如果你想用var filecheck=false;
    filecheck=checksize();
    if (filecheck==true)
    {
      alert("判断通过...");
    }
    else
    {
      alert("判断失败...");
    }
    你就会发现,有的时候是不弹出来提示框的,目前我也在找更好的方法,不行的话就让美工学FLASH的AS,用FLASH+JS进行上传。