javascriptについて


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

よろしくお願いします。

回答の条件
  • 1人5回まで
  • 13歳以上
  • 登録:2011/06/17 14:39:49
  • 終了:2011/06/24 14:40:03

回答(2件)

id:ween No.1

ween回答回数78ベストアンサー獲得回数72011/06/17 15:01:57

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ベストアンサー獲得回数62011/06/17 15:07:27

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

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

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

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

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

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

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません