1

Javascriptを使用して'ssrcを変更しています...初めて幅と高さのプロパティが正しく設定されています。二度目は変わらない。なんで?

だから私は私のページにこの空白の画像を持っています...<img id="imgCropImage" />

つまり、ユーザーが画像をアップロードするたびに、アップローダーのUploadCompleteコールバックによって、この画像のsrcがアップロードされたばかりの画像に設定され、トリミングできるようになります。 次に、この画像の高さのプロパティを使用して、拡大された切り抜きのプレビューを作成します。

初めてうまくいきます。ブラウザまたはDOMなどが、画像の読み込み後にDOMを介しアクセスするimgの高さと幅の属性を自動的に設定します。美しい。

ユーザーが間違った画像をアップロードした場合、別の画像をアップロードできるようにします。ただし、今回は、JavaScriptを介してアクセスされるimgのwidth属性とheight属性は、前の画像と同じままです。新しい画像は、それ自体の幅と高さで正しく表示されます。タグのプロパティが新しいsrcとともに変更されないだけです。

なぜこれが起こるのか誰かが知っていますか?またはさらに良いことに、新しいsrcをロードするときにimgの高さと幅を決定論的に取得するにはどうすればよいですか?

I <3スタックオーバーフロー、I<3あなた。

4

2 に答える 2

2

高さと幅の属性を「削除」するのはどうですか。

$('#imgCropImage').removeAttr('height');
$('#imgCropImage').removeAttr('width');

それはそれを「リセット」するはずです。(つまり、JQueryを使用している場合)。

于 2010-02-08T22:02:45.520 に答える
2

以前の画像を新しいsrcの新しい画像に置き換えようとしましたか?

   var newImg = document.createElement('IMG');
   newImg.src = newSrc;
   oldImg.parentNode.replaceChild(newImg, oldImg);
于 2010-02-08T22:26:45.383 に答える