new Image()で画像をロードしておくと本当に役に立ちますか?
Webページに画像を交互に表示するのによく使われます.多くのお勧めの方法はnew Image()で画像を事前にロードすることです.でもnew Image()で本当に役に立ちますか?
テスト:
バックグラウンドにフィルタを配置して、すべての/*のリクエストをキャプチャします.
doFilterの中の簡単な印刷要求のURL:
htmlコード:
urlが3回印刷されているのが見えます.htmlページのリクエストは1回です.t1.srcが値を設定するときに1回.のときに一度.
このときボタンを押してページの画像を変えると、サービス側から画像を載せることはないと思います.キャッシュにはもう入っていますから.しかしポイントの时フィルタは依然としてURLを印刷しています!
イメージオブジェクトのsrcが変更されるとリクエストが出るようです.では、事前に画像をロードしておくのは役に立たないのではないでしょうか.
テスト:
バックグラウンドにフィルタを配置して、すべての/*のリクエストをキャプチャします.
doFilterの中の簡単な印刷要求のURL:
HttpServletRequest httpRequest = (HttpServletRequest) request;
System.out.println("requets url: " + httpRequest.getRequestURI());
chain.doFilter(request, response);
htmlコード:
<body>
<script>
var t1 = new Image();
t1.src = 'ico_unchecked.gif';
function change(){
im.src = t1.src;
}
</script>
<button onclick="change()">change</button>
<img id="im" src="ico_checked.gif">
</body>
urlが3回印刷されているのが見えます.htmlページのリクエストは1回です.t1.srcが値を設定するときに1回.のときに一度.
このときボタンを押してページの画像を変えると、サービス側から画像を載せることはないと思います.キャッシュにはもう入っていますから.しかしポイントの时フィルタは依然としてURLを印刷しています!
イメージオブジェクトのsrcが変更されるとリクエストが出るようです.では、事前に画像をロードしておくのは役に立たないのではないでしょうか.