当前位置: 首页 > 图文教程 > 网络编程 > Javascript > 用new Image()预先加载图片真的有用吗?

Javascript
JavaScript如何重构嵌套循环和递归
JS应用在Firebug中的扩展架构模式
提升JS性能:将递归转换为迭代
IE7浏览器下缩放图片失真问题
JavaScript对DOM进行操作的指导性原则
JavaScript有趣实例:胸罩罩杯尺寸计算器
Firefox的Firebug扩展:FireScope
Mozilla的JavaScript引擎__noSuchMethod__()方法
JavaScript+CSS制作的网站导航菜单
javascript的私有成员(private)
Javascript绘制分析曲线图
ie6使用js支持hover伪类
收集的25个下拉网页菜单特效Javascript脚本
Javascript框架的自定义事件
总结Javascript调用函数的方法
JS教程:call、apply、callee用法
JS教程:数组类型检测和集合检测
兼容FF的设为首页与收藏网站的JS代码
Javascript教程:PopUp对象
JS读写Cookie以及设置过期时间

Javascript 中的 用new Image()预先加载图片真的有用吗?


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-12   浏览: 177 ::
收藏到网摘: n/a

经常会用到在网页上交替显示图片。很多推荐的作法是用new Image() 预先装载图片。但是用new Image()真的有用吗?
试验:
在后台放一个过滤器捕捉所有 /* 的请求:
doFilter里面简单的打印请求的URL:
代码
HttpServletRequest httpRequest = (HttpServletRequest) request;
System.out.println("requets url: " + httpRequest.getRequestURI());
chain.doFilter(request, response);
html代码:
代码
点击运行可以看到效果:
[Ctrl+A 全选 提示:你可先修改部分代码,再按运行]

可以看到打印了三次url。html页面的请求一次。t1.src设值的时候一次。<img src="">的时候一次。
我想这时候如果按按钮改变页面上的图片,应该不会再从服务端载图片了,因为缓存里面已经有了嘛。可是点的时候过滤器仍然是有打印出URL!
看来只要image对象的src一被改变就会发出请求。那预先装载图片不是等于没用吗?