<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml">
<wml>
<head><meta forua="true" http-equiv="Cache-Control" content="max-age=0" /></head>
<card title="IE8、firfox关于(new Image()).onload的不执行的问题" id="card1">
<p> 游客</p><p>
标题:IE8、firfox关于(new Image()).onload的不执行的问题<br/>
正文:<br/>
如果要获取一张图片原本的高度和宽度，我们一般这样获取var url = &quot;../images/logo.png&quot;;<br/>var img = new Image();<br/>img.src = http://camnpr.com/logo.png;<br/>img.onload = function(){<br/>　　//do something.....<br/>}当图片从服务器传到本来（也即下载完成），就会触发onload事件。但是，如果图片已经缓存在本地的话，在ie8、firfox就有问题了。因为图片已经缓存在本地，所以在没执行js代码前已经触发onload事件，导致没有执行onload里面的代码。解决方案：把代码改成var url = &quot;../images/logo.png&quot;;<br/>var img = new Image();<br/>img.onload = function(){<br/>　　//do something.....<br/>      //img.complete 这个也不需要了<br/>}<br/>img.src = http://camnpr.com/logo.png;这样的话，就可以在js代码执行后加载图片，也保证了onload的执行。<br/><a href="http://camnpr.com/wap.asp?mode=WAP&amp;act=View&amp;id=1456&amp;Page=1">[&lt;&lt;]</a><a href="http://camnpr.com/wap.asp?mode=WAP&amp;act=View&amp;id=1456&amp;Page=1">[[1]]</a><a href="http://camnpr.com/wap.asp?mode=WAP&amp;act=View&amp;id=1456&amp;Page=1">[&gt;&gt;]</a><br/>
<br/>
<a href="wap.asp?act=Com&amp;id=1456">查看评论(0)</a><br/>
<a href="wap.asp?act=AddCom&amp;inpId=1456">发表评论</a><br/><br/>

<br/>

<br/>
<a href="http://camnpr.com/wap.asp">首页</a>
</p>
</card>
</wml>