imgが表示されないときにロードされるかどうかをテストします.
2556 ワード
ずっと分からないで、隠れた要素の背景図、ページがロードする時、自動的にロードしますか?
imgが非表示の場合、画像はロードされますか?
テストコードは次のとおりです.
chrome 33とIE 7のFiddlerモニタの使用をテストしました
テスト結果は次のとおりです.
結果は複雑で、IEとchromeの下のhoverスタイルの背景図は、マウスが浮遊しているときだけロードされます.chromeの下で隠した背景はロードしないで、IEの下で隠した背景はロードします.
結論chrome:で非表示になっている要素とその背景図はロードされません(スタイル非表示要素の現在の背景はロードされます). hoverのバックグラウンドマップはロードされず、hoverの場合にのみロードされます. 非表示のimgまたはimgは、非表示の要素にもロードされます. に一致するスタイルがなく、含まれる背景は表示されません. 非表示の要素にJSを使用して背景図を設定すると、背景図がロードされます.
結論IE: hoverのバックグラウンドマップはロードされず、hoverの場合にのみロードされます. に一致するスタイルがなく、含まれる背景は表示されません.
imgが非表示の場合、画像はロードされますか?
テストコードは次のとおりです.
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>img load</title>
<style>
.divImg {background:url(cssImg1.jpg);}
.divImg {background:url(cssImg2.jpg);}
.divNullImg {background:url(cssNullImg.jpg);}
.divImgNone {display:none;}
.divImgNone {background:url(cssNoneImg1.jpg);}
.divImgNone div {background:url(cssNoneImg2.jpg);}
#divNone {background:url(cssNoneImg3.jpg);}
.divHoverImg:hover {background:url(cssHoverImg1.jpg);}
</style>
</head>
<body>
<img src="img.jpg" />
<img src="cssImg2.jpg" />
<img src="ImgNone.jpg" style="display:none;" />
<div id="divNone" style="display:none; background:url(divNoneBack1.jpg);">
<img src="divNoneImg1.jpg" />
<div style="background:url(divNoneBack2.jpg);"></div>
</div>
<input type="button" value=" " onclick="document.getElementById('divNone').style.display = 'block';" />
<div class="divImg">
img
</div>
<div class="divImgNone">
<img src="divNoneImg2.jpg" />
img none
<div></div>
<div style="background:url(divNoneBack3.jpg);"></div>
</div>
<div class="divHoverImg">
test Hover
</div>
<script>
var img = new Image();
img.src = 'jsImg.jpg';
document.getElementById('divNone').style.backgroundImage = 'url(jsNoneImg.jpg)';
</script>
</body>
</html>
chrome 33とIE 7のFiddlerモニタの使用をテストしました
テスト結果は次のとおりです.
結果は複雑で、IEとchromeの下のhoverスタイルの背景図は、マウスが浮遊しているときだけロードされます.chromeの下で隠した背景はロードしないで、IEの下で隠した背景はロードします.
結論chrome:
結論IE: