2016-09-24 16 views
2

これを検索しましたが、コードを実装するたびに400X400画像をアップロードすると高さと幅が237として返されます。画像サイズを取得する(高さと幅)Jsまたはjquery

$(document).on('change','#tt' , function(){ 
    var img = document.getElementById('tt'); 
    var nheight = img.clientHeight; 
    var nwidth = img.clientWidth; 
    alert(nheight) 
    alert(nwidth) 
}); 
<input type="file" id="tt" name="tt" > 

私は400X400画像をアップロードするとき、私は、アラートボックスの幅と高さ400と400を得ることができますどのように誰もが知っているです。どんな助けも本当に大変感謝しています.....

+1

あなたは幅と入力されていない画像の高さを取得しようとしています。 – Mohammad

+0

これは今ありました。 @Mohammad – Aamir

答えて

2

Imageオブジェクトを作成し、アップロードされたファイルオブジェクトをイメージオブジェクトに添付するファイルアップロードのイベントが発生しました。イメージオブジェクトのイベントをonloadし、イメージの高さと幅を見つけます。

詳細については、下記のスニペットをご確認ください。

var _URL = window.URL || window.webkitURL; 
 
$(document).on('change','#tt' , function(){  
 
    var file, img; 
 
    if ((file = this.files[0])) { 
 
     img = new Image(); 
 
     img.onload = function() { 
 
      alert("width : "+this.width + " and height : " + this.height); 
 
     }; 
 
     img.src = _URL.createObjectURL(file); 
 
    } 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<input type="file" id="tt" name="tt" >

+0

['URL.createObjectURL()'](https://developer.mozilla.org/en-US/docs/Web/API/URL/createObjectURL)は実験的な技術であり、古いバージョンのブラウザをサポートしていません。 – Mohammad

+0

最新のブラウザにも対応しています。 https://developer.mozilla.org/en-US/docs/Web/API/URL/createObjectURLを参照できます。 –

0
var nheight = img.clientHeight; 
var nwidth = img.clientWidth; 

あなただけの次元を取得します。

これを参照して下さい -

画像の高さ属性の値を設定するか、または戻すために、画像の元の高さ、または高さのプロパティを返すために

var x = document.getElementById("myImg").naturalWidth; 

naturalHeight性を試します

http://www.w3schools.com/jsref/prop_img_naturalwidth.asp

+0

警告ボックスに「未定義」値が表示されています。 – Aamir

関連する問題