图片"分页滚动",来着有分,将奉送2008-1-1号之前所有赚到的分数 http://www.smallrain.net/javascript.asp?type=图形图像 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 不能把这些图片的url放在一个数组里 然后在你的向右按钮里写一个事件使每个scr="<script> document.write"array[i]"</script>"里的i的值自动i=i+1 向左的按钮写i=i-1这样不可以么? 偶路过``不过感觉用marquee好象不太好整你说你的那个哟 我没做过,不过看你的描述,用ajax + css等,应该可以做到的大致思路:箭头onmouseover 触发函数,发送ajax请求接下来的5个图片的地址至于移动之类的,我想用javascript的层和css应该都可以做到吧(css不是很熟悉,不过javascript一定可以)如果没用过ajax可以用隐藏帧技术 楼主用过 www.live.com 微软的搜搜引擎没,细心点,你会发现它是滚动的,并且是平滑滚动。你所要求的东西估计只能xmlHTTP 来填充数据,效果除了JavaScript还能用啥? 谁能有实质性的帮助啊http://www.cnblogs.com/windyman/archive/2006/12/20/597677.html http://www.pushu.net/ 觉得好就给分~~ 我在怀疑:就凭asp.net+sql server+js能否实现这个功能。水平有限,实在无法办到。哪位高手能够实现,小弟感激不尽!!! 可以实现的,代码我没有时间帮你写了,原理很简单,关键也就是如果读到五个图片的路径点击事件触发,当然得用XMLHttpRequest向服务器读数据了(五条),关于如果读这五条,就看你的sql还有你的逻辑是怎么样的了,还有你的图片是怎么存储的,是把path存进sqlserver还是存binary的。应该可以更优化一步,可以分析得到,一般看图的话,不会点太多次,也就是说,一次将100个图片读出来放入js数组这100图为当前图的前后50(49)个偏移。这样可以提高速度。之后的操作也就是坐标的操作了 下面是代码片段,你自己把逻辑写完整试试吧。如果array下标越界,会自动填充g_errPsrc图片<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml"> <head> <title> - http://www.never-online.net </title> <meta http-equiv="ImageToolbar" content="no" /> <meta name="creator.name" content="never-online, BlueDestiny" /> <style type="text/css" media="all" title="Default"> </style> <script type="text/javascript"> //<![CDATA[ // this is code fragment, good luck! var g_aImage = []; var g_prefix = "img"; var g_errPsrc = "err.jpg"; var g_offset = 5; (function loadThisDefaults (a) { // load pic path to array for (var i=0; i<10; i++) { a[i]="http://zi.csdn.net/intel_120x60.gif"; } })(g_aImage); function loadImages() { // load pic to container for (var i=0; i<arguments.length; i++) { assignSrc(i+1, arguments[i]); }; function assignSrc (idx, arrSub) { try { var r = document.getElementById; r(g_prefix+idx).src = !!g_aImage[arrSub]?g_aImage[arrSub]:g_errPsrc; r(g_prefix+idx).setAttribute("idx",arrSub); // find array sub with element attribute "idx" } catch (ex) { alert(ex.message); } }; }; function thisClickEventHandler (sDir) { // event handler sDir = sDir.toLowerCase(); if (!!document.getElementById) { var r = document.getElementById; /* this assign only for IE */ } else { throw new Error ("can not support DOM"); } (function validateTheLocation (sDir) { // make sure the location is valid var isValided = true; var errMsg = ""; if (isValided==false) { // if boolean variable is false, show ui dialog ui(errmsg, "dlg"); return; } })(sDir); function ui (msg, arg) { // dialog userinterface if (arg=="dlg") { window.alert(msg); } // else if... }; function getIdxByAttribute (vElementId) { // get idx by attrubite var retval=-1; try { retval = parseInt(r(vElementId).idx); alert(retval) } catch (ex) {}; return retval; } var cur_loc = -1;// current location flag var arg_arr = []; if (sDir=="left") { cur_loc = getIdxByAttribute("img1"); for (var i=g_offset; i>0; i--) arg_arr.push(cur_loc-i); } else if (sDir=="right") { cur_loc = getIdxByAttribute("img5"); for (var i=1; i<=g_offset; i++) arg_arr.push(cur_loc+i); } else { throw new Error("arguments Error"); } //if (cur_loc<0) { throw new Error("sub Error"); } loadImages.apply(null, arg_arr); } onload = function () { loadImages(0,1,2,3,4); } //]]> </script> </head> <body id="www.never-online.net"> <button onclick="thisClickEventHandler('left')">left</button> <img id="img1" src=""> <img id="img2" src=""> <img id="img3" src=""> <img id="img4" src=""> <img id="img5" src=""> <button onclick="thisClickEventHandler('right')">right</button> </body></html> 关于加滚动出来的动画,应该不难的,你加一个timeout或才interval判断相对坐标或偏移就可以了 a标签即增加了href下载包,也增加onclick这两个事件如何同时响应 javascpirt 里面的 juery 语法 QQ好友列表如何用js实现?? 跨页的锚怎么做? 很急,请教高手一个问题。 菜鸟请教下拉列表框的问题! 关于javascript读取文件的问题(急)! 请问:如何用JS运行代理?急!!!! ajax动态刷新页面里的table问题,求大神解决 phantomjs如何循环执行page.open一个url 请问用js如何将包含<BR>的字符串内容输出到textarea中后,让<BR>自动回车换行 不明白问题,window.createPopup() 弹出的内容,怎么隐藏?
然后在你的向右按钮里写一个事件使每个scr="<script> document.write"array[i]"</script>"
里的i的值自动i=i+1 向左的按钮写i=i-1
这样不可以么? 偶路过``不过感觉用marquee好象不太好整你说你的那个哟
大致思路:
箭头onmouseover 触发函数,发送ajax请求接下来的5个图片的地址
至于移动之类的,我想用javascript的层和css应该都可以做到吧(css不是很熟悉,不过javascript一定可以)如果没用过ajax可以用隐藏帧技术
http://www.cnblogs.com/windyman/archive/2006/12/20/597677.html
水平有限,实在无法办到。
哪位高手能够实现,小弟感激不尽!!!
这100图为当前图的前后50(49)个偏移。这样可以提高速度。之后的操作也就是坐标的操作了
如果array下标越界,会自动填充g_errPsrc图片<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title> - http://www.never-online.net </title>
<meta http-equiv="ImageToolbar" content="no" />
<meta name="creator.name" content="never-online, BlueDestiny" />
<style type="text/css" media="all" title="Default"> </style>
<script type="text/javascript">
//<![CDATA[
// this is code fragment, good luck! var g_aImage = [];
var g_prefix = "img";
var g_errPsrc = "err.jpg";
var g_offset = 5; (function loadThisDefaults (a) { // load pic path to array
for (var i=0; i<10; i++) {
a[i]="http://zi.csdn.net/intel_120x60.gif";
}
})(g_aImage); function loadImages() { // load pic to container
for (var i=0; i<arguments.length; i++) {
assignSrc(i+1, arguments[i]);
};
function assignSrc (idx, arrSub) {
try {
var r = document.getElementById;
r(g_prefix+idx).src = !!g_aImage[arrSub]?g_aImage[arrSub]:g_errPsrc;
r(g_prefix+idx).setAttribute("idx",arrSub); // find array sub with element attribute "idx"
} catch (ex) { alert(ex.message); }
};
}; function thisClickEventHandler (sDir) { // event handler
sDir = sDir.toLowerCase();
if (!!document.getElementById) { var r = document.getElementById; /* this assign only for IE */ }
else { throw new Error ("can not support DOM"); } (function validateTheLocation (sDir) {
// make sure the location is valid
var isValided = true;
var errMsg = ""; if (isValided==false) {
// if boolean variable is false, show ui dialog
ui(errmsg, "dlg");
return;
}
})(sDir); function ui (msg, arg) {
// dialog userinterface
if (arg=="dlg") {
window.alert(msg);
} // else if...
}; function getIdxByAttribute (vElementId) {
// get idx by attrubite
var retval=-1;
try {
retval = parseInt(r(vElementId).idx);
alert(retval)
} catch (ex) {};
return retval;
}
var cur_loc = -1;// current location flag
var arg_arr = []; if (sDir=="left") {
cur_loc = getIdxByAttribute("img1");
for (var i=g_offset; i>0; i--)
arg_arr.push(cur_loc-i);
} else if (sDir=="right") {
cur_loc = getIdxByAttribute("img5");
for (var i=1; i<=g_offset; i++)
arg_arr.push(cur_loc+i);
} else {
throw new Error("arguments Error");
} //if (cur_loc<0) { throw new Error("sub Error"); }
loadImages.apply(null, arg_arr);
} onload = function () {
loadImages(0,1,2,3,4);
}
//]]>
</script>
</head> <body id="www.never-online.net">
<button onclick="thisClickEventHandler('left')">left</button>
<img id="img1" src="">
<img id="img2" src="">
<img id="img3" src="">
<img id="img4" src="">
<img id="img5" src="">
<button onclick="thisClickEventHandler('right')">right</button>
</body>
</html>