CSDN的高手快来救救我吧。。。急。。 图片的地址保留在变量里,显示的时候再付给img对象,这样是不会全部下载的 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 楼上的,您能把代码贴出来好吗?结合ASP或PHP都行。这是我的代码,还没调试好,结合PHP的。<?php include_once("config.inc.php");?><HTML><HEAD><TITLE>季候风杂志演试</TITLE><META http-equiv=Content-Type content="text/html; charset=gb2312"><STYLE type=text/css>BODY { BACKGROUND-IMAGE: url(bg.gif); MARGIN: 0px; BACKGROUND-REPEAT: no-repeat}</STYLE><META content="MSHTML 6.00.2800.1506" name=GENERATOR></HEAD><BODY leftMargin=0 topMargin=0 marginheight="0" marginwidth="0"><?php$page=trim($_GET['page']);if (is_numeric($_GET['page'])) { $page=trim($_GET['page']);} else { $page=1;}$sql="select count(*) as amount from magazine";$result=mysql_query($sql) or die ("Invalid query:".mysql_error());$row=mysql_fetch_array($result);$amount=$row['amount'];$sql="select * from magazine order by id asc limit ".($page-1).",2";$result=mysql_query($sql) or die ("Invalid query:".mysql_error());while ($row=mysql_fetch_array($result)) { $pid=$row['id']; $id="d".$row['id'];?><DIV id=<?php echo $id;?> style=<?php echo "\"".$row['style']."\"";?>><A href="javascript:<?php echo $row['link'];?>(<?php echo "'".$row['id']."'";?>,<?php echo $amount;?>);" onContextMenu="window.open(<?php echo "'".$row['bimage']."'";?>,'newwindow','height=750, width=1020, top=0, left=0,toolbar=no, menubar=no, scrollbars=yes, resizable=no,location=n o, status=no');return false;"><IMG height=642 src=<?php echo "\"".$row['simage']."\"";?>width="100%" border=0></A></DIV><?php}?><SCRIPT language=JavaScript type=text/JavaScript>var count=<?php echo $amount;?>;var currentTime = 0 ;var z = 0 ;var w = 500;var l = 1;var divs = new Array();SetDivs();HideAll();document.all("d1").style.display="";document.all("d2").style.display="";function SetDivs()//把层的ID添加到一个数组里面,以便控制,见后面HideALL(){ for(i=1;i<=2;i++) { divs.push("d"+<?php echo ($pid-1);?>); }}function nextPage(id,t)//下一页的逻辑控制,{ z++; if(id<t) { ShowNext(parseInt(id)+2); } else { alert("last"); }}function prevPage(id)//上一页的逻辑控制{ z++; if(id>1) { ShowPre(parseInt(id)-2); } else { alert("frist"); }}function show(id)//显示一个层{ document.all(divs[id-1]).style.display = "";}function ShowPre(id)//上一页,先翻左边再翻右边{//divs[id-1]显示//divs[id+1]隐藏//divs[id]显示//divs[id+2]隐藏 document.all(divs[id-1]).style.display = ""; document.all(divs[id+1]).style.zIndex = z; var g = 1.2; var s = 10*g*currentTime*currentTime*currentTime ; if ( s < 100 )//显示层 { document.all(divs[id+1]).style.width = Math.ceil(w*(100-s)/100) ; document.all(divs[id+1]).style.left = Math.ceil( l + w*s/100 ) ; //document.all(divs[id-1]).style.width = w*s/100; currentTime++ ; setTimeout( "ShowPre("+id+");" , 10 ); } else { document.all(divs[id+1]).style.display = "none"; currentTime = 0; ShowPre2(id); }}function ShowPre2(id)//上一页{ document.all(divs[id]).style.display = ""; var g = 1.2; var s = 10*g*currentTime*currentTime*currentTime ; if ( s < 100 )//显示层 { document.all(divs[id]).style.width = w*s/100; currentTime++ ; setTimeout( "ShowPre2("+id+");" , 10 ); } else { document.all(divs[id]).style.width = w; document.all(divs[id+2]).style.display = ""; currentTime = 0; }}function ShowNext(id)//下一页{//divs[id-1]显示//divs[id-3]隐藏//divs[id-2]显示//divs[id-4]隐藏 document.all(divs[id-1]).style.display = ""; var g = 1.2; var s = 10*g*currentTime*currentTime*currentTime ; if ( s < 100 )//显示层 { document.all(divs[id-3]).style.width = w*(100-s*1)/100 ; currentTime++ ; setTimeout( "ShowNext("+id+");" , 10 ); } else { document.all(divs[id-3]).style.width = 0 ; document.all(divs[id-3]).style.display = "none"; document.all(divs[id-2]).style.display = ""; document.all(divs[id-2]).style.zIndex = z currentTime = 0; ShowNext2(id); }}function ShowNext2(id){//divs[id-1]显示//divs[id-3]隐藏//divs[id-2]显示//divs[id-4]隐藏 var g = 1.2; var s = 10*g*currentTime*currentTime*currentTime ; if ( s < 100 )//显示层 { document.all(divs[id-2]).style.width = w*s/100 ; document.all(divs[id-2]).style.left = Math.ceil( l + w - w*s/100 ) ; currentTime++ ; setTimeout( "ShowNext2("+id+");" , 10 ); } else { document.all(divs[id-2]).style.width = w ; document.all(divs[id-2]).style.left = l; document.all(divs[id-4]).style.display = "none"; currentTime = 0; }}function HideAll()//隐藏所有层{ for(i=0;i<divs.length;i++) { document.all(divs[i]).style.display= "none"; }} </SCRIPT></BODY></HTML> specialjuly (七月的鹰) ,我覺得用ASP 或 PHP來提交請求﹐每次只給兩個圖片這樣方法可以解決你說的問題 光觉得不行呀。我也觉得可以实现。可我搞一个星期了,还是没头绪。我对JAVASCRIPT不熟。 你*丫*地又跑这里来问了...我说了,用var img1 = new Image();img1.src = "aa.gif";这样的办法就是预载入图片,这img1有一个属性fileSize,当它的值还是-1的时候,那就是它还没下载完或是找不到图片的结果,其它的,你自己摆平....只要这样,你的图片会自己下载,下载完后也就是fileSize不等于-1之后,你可以想办法置换图片或是直接给别一个IMG的SRC赋给此img1.src的值,因为这图片己经下载了,不会再次下载... CSDN的高手在哪里呀?难道这个问题就那么难吗? net_lover(孟子E章) 讲的很清楚了,不是问题难,是你的学习心态不积极! EXT -> sencha-touch -> Ext.tab.Panel问题 js控制iframe弹出窗口 鼠标移动改变透明度问题 关于JS火狐不兼容的问题 数组问题 计算购物车的总价格 高分求助 如何在下拉列表中放入图片,请高手赐教,谢谢··· JS控制根据所传数据选中多选按钮 求助!怎么用js修改被选择的checkbox的样式 急!!!!!!关于xml+xsl的问题 怎么样优化TABLE
这是我的代码,还没调试好,结合PHP的。<?php include_once("config.inc.php");?>
<HTML><HEAD><TITLE>季候风杂志演试</TITLE>
<META http-equiv=Content-Type content="text/html; charset=gb2312">
<STYLE type=text/css>BODY {
BACKGROUND-IMAGE: url(bg.gif); MARGIN: 0px; BACKGROUND-REPEAT: no-repeat
}
</STYLE>
<META content="MSHTML 6.00.2800.1506" name=GENERATOR></HEAD>
<BODY leftMargin=0 topMargin=0 marginheight="0" marginwidth="0">
<?php
$page=trim($_GET['page']);
if (is_numeric($_GET['page'])) {
$page=trim($_GET['page']);
} else {
$page=1;
}
$sql="select count(*) as amount from magazine";
$result=mysql_query($sql) or die ("Invalid query:".mysql_error());
$row=mysql_fetch_array($result);
$amount=$row['amount'];
$sql="select * from magazine order by id asc limit ".($page-1).",2";
$result=mysql_query($sql) or die ("Invalid query:".mysql_error());
while ($row=mysql_fetch_array($result)) {
$pid=$row['id'];
$id="d".$row['id'];
?>
<DIV id=<?php echo $id;?>
style=<?php echo "\"".$row['style']."\"";?>><A
href="javascript:<?php echo $row['link'];?>(<?php echo "'".$row['id']."'";?>,<?php echo $amount;?>);" onContextMenu="window.open(<?php echo "'".$row['bimage']."'";?>,'newwindow','height=750, width=1020, top=0, left=0,toolbar=no, menubar=no, scrollbars=yes, resizable=no,location=n o, status=no');return false;"><IMG height=642 src=<?php echo "\"".$row['simage']."\"";?>
width="100%" border=0></A></DIV>
<?php
}
?>
<SCRIPT language=JavaScript type=text/JavaScript>
var count=<?php echo $amount;?>;
var currentTime = 0 ;
var z = 0 ;
var w = 500;
var l = 1;
var divs = new Array();SetDivs();
HideAll();
document.all("d1").style.display="";
document.all("d2").style.display="";
function SetDivs()//把层的ID添加到一个数组里面,以便控制,见后面HideALL()
{
for(i=1;i<=2;i++)
{
divs.push("d"+<?php echo ($pid-1);?>);
}
}
function nextPage(id,t)//下一页的逻辑控制,
{
z++;
if(id<t)
{
ShowNext(parseInt(id)+2);
}
else
{
alert("last");
}
}
function prevPage(id)//上一页的逻辑控制
{
z++;
if(id>1)
{
ShowPre(parseInt(id)-2);
}
else
{
alert("frist");
}
}
function show(id)//显示一个层
{
document.all(divs[id-1]).style.display = "";
}
function ShowPre(id)//上一页,先翻左边再翻右边
{
//divs[id-1]显示
//divs[id+1]隐藏
//divs[id]显示
//divs[id+2]隐藏
document.all(divs[id-1]).style.display = "";
document.all(divs[id+1]).style.zIndex = z;
var g = 1.2;
var s = 10*g*currentTime*currentTime*currentTime ;
if ( s < 100 )//显示层
{
document.all(divs[id+1]).style.width = Math.ceil(w*(100-s)/100) ;
document.all(divs[id+1]).style.left = Math.ceil( l + w*s/100 ) ;
//document.all(divs[id-1]).style.width = w*s/100;
currentTime++ ;
setTimeout( "ShowPre("+id+");" , 10 );
}
else
{
document.all(divs[id+1]).style.display = "none";
currentTime = 0;
ShowPre2(id);
}
}
function ShowPre2(id)//上一页
{
document.all(divs[id]).style.display = "";
var g = 1.2;
var s = 10*g*currentTime*currentTime*currentTime ;
if ( s < 100 )//显示层
{
document.all(divs[id]).style.width = w*s/100;
currentTime++ ;
setTimeout( "ShowPre2("+id+");" , 10 );
}
else
{
document.all(divs[id]).style.width = w;
document.all(divs[id+2]).style.display = "";
currentTime = 0;
}
}
function ShowNext(id)//下一页
{
//divs[id-1]显示
//divs[id-3]隐藏
//divs[id-2]显示
//divs[id-4]隐藏
document.all(divs[id-1]).style.display = "";
var g = 1.2;
var s = 10*g*currentTime*currentTime*currentTime ;
if ( s < 100 )//显示层
{
document.all(divs[id-3]).style.width = w*(100-s*1)/100 ;
currentTime++ ;
setTimeout( "ShowNext("+id+");" , 10 );
}
else
{
document.all(divs[id-3]).style.width = 0 ;
document.all(divs[id-3]).style.display = "none";
document.all(divs[id-2]).style.display = "";
document.all(divs[id-2]).style.zIndex = z
currentTime = 0;
ShowNext2(id);
}
}
function ShowNext2(id)
{
//divs[id-1]显示
//divs[id-3]隐藏
//divs[id-2]显示
//divs[id-4]隐藏
var g = 1.2;
var s = 10*g*currentTime*currentTime*currentTime ;
if ( s < 100 )//显示层
{
document.all(divs[id-2]).style.width = w*s/100 ;
document.all(divs[id-2]).style.left = Math.ceil( l + w - w*s/100 ) ;
currentTime++ ;
setTimeout( "ShowNext2("+id+");" , 10 );
}
else
{
document.all(divs[id-2]).style.width = w ;
document.all(divs[id-2]).style.left = l;
document.all(divs[id-4]).style.display = "none";
currentTime = 0;
}
}
function HideAll()//隐藏所有层
{
for(i=0;i<divs.length;i++)
{
document.all(divs[i]).style.display= "none";
}
}
</SCRIPT>
</BODY></HTML>
我覺得用ASP 或 PHP來提交請求﹐每次只給兩個圖片這樣方法可以解決你說的問題
var img1 = new Image();
img1.src = "aa.gif";
这样的办法就是预载入图片,这img1有一个属性fileSize,当它的值还是-1的时候,那就是它还没下载完或是找不到图片的结果,其它的,你自己摆平....只要这样,你的图片会自己下载,下载完后也就是fileSize不等于-1之后,你可以想办法置换图片或是直接给别一个IMG的SRC赋给此img1.src的值,因为这图片己经下载了,不会再次下载...