Internet ExplorerのJavaScriptに問題があります。Internet Explorerでsrc値が変更されたときに無限ループする
他のブラウザで正常に動作します。
イメージのsrcプロパティを変更する次の方法があります。この場合、イメージのダウンロードが開始されます。以下を参照してください:
for (var i = 0; i < imagesStartedDownloading.length; i++) {
if (imagesStartedDownloading[i] == false && responseItems[i] == true) {
console.log("image", i);
var url = baseurl + "/ImageDownload/?imageName=" + hash + "_" + imageDegrees[i] + ".jpg" + "&r=" + Math.random();
imagesStartedDownloading[i] = true;
images.eq(i).attr("src", url);
}
}
問題は、このプロパティを変更するときにInternet Explorerが画像をダウンロードする無限ループを開始することです。私はforループにconsole.logを入れていることに注意してください。このfor-loopがendlesループで実行されないことを確認できます。ダウンロードする必要がある画像ごとに1回だけ実行されます。だからそれは問題ではありません。
この動作は実際にはこのページに表示されます:http://www.energy-frames.dk/Konfigurator。 F12を押して、[ネットワーク]タブをチェックインします。ホームページの画像を変更して、新しい画像のダウンロードが開始されるようにします。この変更が行われると、新しい画像が無限ループでダウンロードされます(これはIEでほぼ毎回発生します)。あなたは、私は本当にこの時間のデバッグの多くを費やしていると、それはIEでなく、他のすべてのブラウザでこのように振る舞うなぜ私が見るカント
を変更することができるものの下に参照してください。
これはどうして起こりますか?または、私が試してみたいことについていくつか提案していますか? 編集:
@gxoptg 私はあなたの提案を試しました。このように: "無効0のjavascriptを":使用して
var newimg = $("<img class='rotator" + (isMainImage ? " active" : "") + "' src='javascript:void 0' />");
と、この:
img.attr("src", "javascript:void 0");
は私に、このエラーを与える:一方
、私は完全に削除する場合行img.attr( "src"、 ""); imgLoadErrorメソッドで を実行すると、画像が無限ループでダウンロードされていないことがわかります。一方、それらは表示されません。だから私はjavascriptを使用しています:void 0間違っている?
私は次のようにします。
img.attr("src", "void(0)");
は、次に無限ループはありませんが、画像はIEに表示され文句を言わない - まだクロームで正常に動作します。
for (var i = 0; i < totalnumberofimages; i++) {
var url = "";
var isMainImage = i == currentDragImg;
var newimg = $("<img class='rotator" + (isMainImage ? " active" : "") + "' src='' />");
newimg.on("error", imgLoadError);
newimg.on("load", imgLoaded);
imgcontainer.append(newimg);
}
注var newimg = $(...)
ライン:
images変数がキャストされている場所でコードを共有することもできます。そうすれば、スクリプトフォルダにかなりのファイルがあるので、ファイル名を共有しないと良いアイデアが得られます。ありがとう。 – serdarsenay
あなたはこれを試してみましたか?http://stackoverflow.com/questions/5775469/whats-the-valid-way-to-include-an-image-with-no-src? –
'img.setAttribute(" ... "、" ... ")'または 'img.src =" ... "' – CoderPi