2011-09-15 10 views
0

画像グループのCSS幅を取得しようとしています。例えば、私はそのような画像のCSS幅プロパティを取得できません。

#myDiv img{ 
    width: 100px; 
} 

としてCSSルールを持っているし、$(ドキュメント).ready()で私は、このCSS値で入手できますか

console.log($("#myDiv img").css("width")); //prints 'undefined' 
console.log($("#myDiv img").width());  //prints 'null' 

方法がありますか?ありがとう!

編集: CSS値を取得しようとした後でイメージを動的にロードしていましたが、jqueryに要素が必要であることがわかりませんでした。イメージをロードする前に値を取得する方法はありますか?

+0

domに存在するイメージです(ロードされていますか?)? –

+0

私たちはhtmlを見ることができますか? –

+0

gion_13あなたは伝説です。私は次の行の画像を読み込んでいました。私がそれらをロードした後に同じログを実行すると、正しい値が得られます。しかし、イメージがロードされる前にその値を取得する方法はありますか?それは本当に役に立ちます。ジョセフ、私はhtml()で画像に書いています、それはすべてですimage Tuck

答えて

1

を動作するため、HTMLが

<div id="myDiv"> 
    <img src="/nyan.gif" /> 
</div> 

のようなものであることを確認してください)は、nullを返しますつまり、セレクタ "#myDiv img"と一致する要素がページにないことを意味します。そのプロパティにjQueryがアクセスするには、そのイメージの1つが実際にページに存在する必要があります(つまり、jQueryに「このような要素の幅はどういうのでしょうか」と問いかけることはできません)。

私はあなたがそのdivに画像を動的に追加していると思っていますが、あなたのスクリプトが実行されても存在しません。どちらかというと、#myDivというスペルミスがあります。

+0

あなたは正しく推測します。イメージが追加される前にその値に到達する方法はありますか? – Tuck

+0

何でも、私はそれを回避します。ありがとう! – Tuck

関連する問題