javascriptについて


ie8で、画像の横サイズを取得する方法を教えて下さい。
document.getElementById('imageid').width
では取得出来ませんでした。

よろしくお願いします。

回答の条件
  • 1人5回まで
  • 登録:
  • 終了:2011/06/24 14:40:03

回答2件)

id:ween No.1

回答回数78ベストアンサー獲得回数7

IEでは、img要素のwidth、heightプロパティは使えないみたいです。

かなり前に参考にしたサイトの説明ですが、どこのサイトだか忘れました。

//IEの場合は新しいImageオブジェクトを生成してそのオブジェクトのプロパティから幅と高さを取得します
var newImg = new Image();
newImg.src = 'foo.jpg';
Event.observe(newImg, 'load', function() {
    alert(newImg.width + '*' + newImg.height);  // 100*80
});

すみません、訂正です。

document.getElementById('imageid').width

IE8で試してみましたが、これで取得できました。

ページがロードされてるかどうかが問題かもしれません。

id:worldtravel

ありがとうございます。

として、hogeの中で取得を試みているので

必ずロードはされていると思うのですが...

2011/06/17 15:27:54
id:cho45 No.2

回答回数19ベストアンサー獲得回数6

オリジナルサイズをとりたいなら http://d.hatena.ne.jp/uupaa/20090602/1243933843 このへんを参考にしてみてください。

そうではなく、表示されているサイズをとりたいなら image.offsetWidth でできるはずです。

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません