IE9でimageのonloadが走らない問題を無理やり解消する
IE9ではimageを読み込んだときにonloadが走らないという問題があります。
その他のブラウザでは、imageのsrcにキャッシュバスターをつけることで解決しますが、
IE9に関してはキャッシュバスターをつけても解決しません。
そこで、onload以外のプロパティを使ってonload的役割を無理やり実装しましょう。
imageにはwidth, heightというプロパティがあります。
そしてこれらのプロパティは、imageがまだ読み込まれてない段階では0という値を持っています。
読み込まれたとき、widthとheightにその画像の幅・高さがあてられます。
この値をsetIntervalで監視することで、画像が読み込まれたタイミングをとることができるという技です。
var img = new Image();
setInterval(function(){
if ( img.width > 0 ){
alert( "image loaded." );
}
}, 50);
img.src = "img/hoge.jpg";
Author And Source
この問題について(IE9でimageのonloadが走らない問題を無理やり解消する), 我々は、より多くの情報をここで見つけました https://qiita.com/gonshi_com/items/4dfb2257dd64527bdac4著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .