2016-11-28 30 views
1

私はブラウザは、私は画像の幅と高さはどのべき画像タグから属性を取得したい480x360イメージタグからwidth属性とheight属性を取得する方法は?

で元の幅と高さで画像を表示している次のイメージタグ

<img class="someclass" src="somesrc" width="220" height="165" /> 

を持っています私は、次の

var img = document.getElementsByClassName('someclass'); 
console.log(img.clientWidth); 
console.log($('.someclass').attr('width')); 
を試してみました 220 and 165

を返しますしかしそれは私にundefinedを返します。

次のコードは、画像の実際の幅と高さを返します。これは

$('.someclass').width(); 

220 and 165を返す方法はありますか?

+1

'img'は' HTMLCollection'、ない要素 – MysterX

+0

'document.getElementsByClassName( '工ass')[0]' ' –

+2

$である(」。工ass ')。ATTR(' 幅 ')'べき'よく働いた – adeneo

答えて

0

あなたの助けに感謝します。しかし、私は解決策を見つけました。 次のコードは私の仕事です。

$('img.someclass).load(function(){ 
    var width = $(this).attr('width'); 
    var height = $(this).attr('height'); 
    if(width != 'undefined') { 
    $(this).css('width', width); 
    } 
    if(height != 'undefined') { 
    $(this).css('height', height); 
    } 
}); 
-1
var x = document.createElement("IMG"); 
x.setAttribute("src", "path/here"); 
x.setAttribute("width", "220"); 
x.setAttribute("height", "165"); 
document.getElementById("SomeID").appendChild(x); 

はそれにいくつかのIDを与え、あなたはJSを使用する場合は、この作業をする必要があります。

0

戻ってきたときにnodeListではなく、単一の要素のwidth属性を取得する必要があります。

だけで行う

var element = document.querySelector('.someclass'); 
console.log(element.getAttribute('width')); //220 
console.log(element.getAttribute('height')); //165 
-1

var img = document.getElementsByClassName('someclass')[0]; 
var width = img.width; 
var height = img.height 

を試してみた場合に、新しい値を設定したい...これを試してみてください:

img.width = yourvalue; 
img.height = yourvalue; 

それが正常に動作しますので、プラザドン人々を何の理由もなく下降させる

+0

レンダリングされた幅/高さではなく、 – Zinc

関連する問題