提前下载将要显示的图片 d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];后面怎么用的是j++呢? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 a 是 onload 调用的时候一个参数数组 d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];改成d.MM_p[j]=new Image; d.MM_p[j].src=a[i];试下。 在DreamWaver下要生成这个函数,在某些时候可能这个函数需要修改,但大多数情况不需要修改。你的这个情况是DW3生成的,检查一下你自己的浏览器问题 大早上来看到大家的回复 很是感动 先 谢了,我以为dw生成的应该没啥问题呢,我改改吧,另外今天发布了firfox新版本,我发现firfox上图片显示的时候好像不是重新去请求图片地址,不知道是浏览器机制问题,还是那个函数对firfox有效 ie 无效,我先试先 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><HTML><HEAD><TITLE> New Document </TITLE><meta http-equiv="content-type" content="text/html" charset="GB2312"><link rel="stylesheet" type="text/css" href=""><script type="text/javascript" src=""></script><script language="javascript" type="text/javascript"> var flag = 0; var imges = ['http://www.phpe.net/images/phplogo/php_win.gif','http://phpe.net/images/special/5_b.gif','http://phpe.net/images/special/4_b.gif','http://www.phpe.net/images/partner/phpclasses.gif']; function cdo(a) { var mytb = document.getElementById('mytb'); if (isNaN(a)) { if (a == '+') { flag = ((flag+1) > (imges.length-1))?(imges.length - 1):(flag+1); mytb.setAttribute("background",imges[flag]); } if (a == '-') { flag = ((flag-1) < 0)?0:(flag - 1); mytb.setAttribute("background",imges[flag]); } return true; } mytb.setAttribute("background",imges[a]); flag = parseInt(a); return true; }</script></HEAD><BODY><input type="button" value="First!" style="cursor:hand;" onclick="cdo(0);return true;"><input type="button" value="Next!" style="cursor:hand;" onclick="cdo('+');return true;"><input type="button" value="PreOne!" style="cursor:hand;" onclick="cdo('-');return true;"><input type="button" value="Last!" style="cursor:hand;" onclick="cdo(imges.length-1);return true;"><br/><br/><TABLE id="mytb" border="1" width="200"><TR> <TD>a</TD> <TD>b</TD></TR><TR> <TD>c</TD> <TD>d</TD></TR></TABLE></BODY></HTML> function MM_preloadImages() { //v3.0 var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array(); var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++) if (a[i].indexOf("#")!=0){ myimg = new Image; myimg.src=a[i]; d.MM_p[j]=myimg; } }}这样试试 长舒一口气 搞定,通过大家的帮助让我慢慢发现了问题所在,问题主要出在td.style.background='url(/images/index_62.gif)';如果这种方式每次都会去取图片我想这可能和css有关系,url($imgpath)可能是发送一个请求到图片地址,换成了td.setAttribute("background",'/images/index_64.gif');这样先前的预下载就会起了作用,非常感谢大家每一位 大家帮我分析下..应该是作用域的问题. spry 菜单栏刷新 JAVASCRIPT创建一个对象 reference 帮忙看下批量设置,咋我一设置就好像刷新页面了的。 javascript 如何向ocx中的函数传递字符串数组?? 选下拉框时,清空文本框 javascript如何调用API函数,RegOpenKeyEx()这个函数! 弹出页时,父页回到顶部的问题 jquery 得到指定div下面的指定div 微信小程序的问题 大吼一声,大家怎么实现带复选框的树的? 如何利用javascript动态添加表格列?
改成
d.MM_p[j]=new Image; d.MM_p[j].src=a[i];
试下。
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<meta http-equiv="content-type" content="text/html" charset="GB2312">
<link rel="stylesheet" type="text/css" href="">
<script type="text/javascript" src=""></script>
<script language="javascript" type="text/javascript">
var flag = 0;
var imges = ['http://www.phpe.net/images/phplogo/php_win.gif','http://phpe.net/images/special/5_b.gif','http://phpe.net/images/special/4_b.gif','http://www.phpe.net/images/partner/phpclasses.gif']; function cdo(a)
{
var mytb = document.getElementById('mytb');
if (isNaN(a))
{
if (a == '+')
{
flag = ((flag+1) > (imges.length-1))?(imges.length - 1):(flag+1);
mytb.setAttribute("background",imges[flag]); }
if (a == '-')
{
flag = ((flag-1) < 0)?0:(flag - 1);
mytb.setAttribute("background",imges[flag]);
}
return true;
}
mytb.setAttribute("background",imges[a]);
flag = parseInt(a);
return true;
}
</script>
</HEAD><BODY>
<input type="button" value="First!" style="cursor:hand;" onclick="cdo(0);return true;">
<input type="button" value="Next!" style="cursor:hand;" onclick="cdo('+');return true;">
<input type="button" value="PreOne!" style="cursor:hand;" onclick="cdo('-');return true;">
<input type="button" value="Last!" style="cursor:hand;" onclick="cdo(imges.length-1);return true;"><br/><br/><TABLE id="mytb" border="1" width="200">
<TR>
<TD>a</TD>
<TD>b</TD>
</TR>
<TR>
<TD>c</TD>
<TD>d</TD>
</TR>
</TABLE>
</BODY>
</HTML>
var d=document;
if(d.images){
if(!d.MM_p) d.MM_p=new Array();
var i,j=d.MM_p.length,a=MM_preloadImages.arguments;
for(i=0; i<a.length; i++)
if (a[i].indexOf("#")!=0){
myimg = new Image;
myimg.src=a[i];
d.MM_p[j]=myimg;
}
}
}
这样试试
td.style.background='url(/images/index_62.gif)';
如果这种方式每次都会去取图片我想这可能和css有关系,url($imgpath)可能是发送一个请求到图片地址,换成了
td.setAttribute("background",'/images/index_64.gif');
这样先前的预下载就会起了作用,非常感谢大家每一位