2013-06-06 38 views
0

我正在嘗試在IE9中獲取圖像的大小。我成功地做到了(試用jpg)。當我嘗試加載寬度低於高度的圖像時,根本沒有問題。但是當我嘗試上傳寬度高於高度的圖像時,我看到輸出「vh:」,「vw:」的行返回零。使用Javascript的圖像大小 - IE9

爲什麼在嘗試加載寬度>高度的圖像(通過我的代碼)時出現問題? 謝謝。

這是我的代碼(Works for IE9 - 這就是我想要查看的)。

<!doctype html> 
<html> 
    <head> 
    <!-- <meta content="text/html; charset=UTF-8" http-equiv="Content-Type" /> --> 
    <link href='http://fonts.googleapis.com/css?family=PT+Sans:400italic' rel='stylesheet' type='text/css'> 
    <link href='http://fonts.googleapis.com/css?family=PT+Sans' rel='stylesheet' type='text/css'> 
    <link href='http://fonts.googleapis.com/css?family=PT+Sans:700' rel='stylesheet' type='text/css'> 
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script> 
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script> 
    <script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.9.1/jquery-ui.min.js"></script> 
    <title>Image preview example</title> 
    <script type="text/javascript"> 
     var loadImageFile = (function() { 
     var v=new Image(); 
     if (navigator.appName === "Microsoft Internet Explorer") { 
      return function() { 
      alert("file." + document.getElementById("id_filepic").value); 
      $("#id_image").css("filter", "progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=scale)"); 
      //$("#id_image").attr("src", document.getElementById("id_filepic").value); 
      //v.src = document.getElementById("id_filepic").value; 
      v.src = $("#id_filepic").val(); 
      alert("vw:" + v.width); 
      alert("vh:" + v.height); 
      $("#id_image").width(v.width); 
      $("#id_image").height(v.height); 
      document.getElementById("id_image").filters.item("DXImageTransform.Microsoft.AlphaImageLoader").src = document.getElementById("id_filepic").value; 
      alert("w final:" + $("#id_image").width()); 
      alert("h final:" + $("#id_image").height()); 
      } 
     } 
     })(); 
    </script> 
    <style type="text/css"></style> 
    </head> 
    <body> 
    <form name="uploadForm"> 
     <p><input id="id_filepic" type="file" name="myPhoto" onchange="loadImageFile();" /><br /> 
    </form> 
    <image id="id_image" src="" onmousedown="return false"></image> 
    </body> 
+0

你可以考慮這個問題,因爲封閉的,因爲我有解決方案:HTTP:// stackoverflow.com/questions/17012263/the-event-after-loading-image-on-ie9 謝謝,無論如何:) – Eitan

回答