怎样让一个Table下的所有<tr>组滚动显示?- 用JQuery。 本帖最后由 ThankU 于 2010-10-09 22:55:13 编辑 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 function scrollNews() { var areaEl = document.getElementById("lastNewsCon"),//放Table的层 areaHeight = 200, conEl = document.getElementById("newsCon"),//Table height = conEl.offsetHeight, stopscroll = false; globalParams.newsScroll.areaEl = areaEl; globalParams.newsScroll.stopscroll = stopscroll; globalParams.newsScroll.height = height; //初始化滚动内容 if (!$.trim(conEl.innerHTML) || height < areaHeight) return; conEl.innerHTML += conEl.innerHTML; conEl.onmouseover = function() { globalParams.newsScroll.stopscroll = true; return false; } conEl.onmouseout = function() { globalParams.newsScroll.stopscroll = false; return false; } window.setInterval("scrollUp()", 200);}function scrollUp() { var p = globalParams.newsScroll; if (p.stopscroll == true) return; if (p.areaEl.scrollTop == p.height - 2) p.areaEl.scrollTop = 0; else p.areaEl.scrollTop += 2;} 请问楼上,你的代码和table1有关联么?怎样使下面的tr滚动起来呢?<table class="class1" id="table1"> <tr><td .../><td .../></tr> <tr><td .../><td .../></tr> <tr><td .../><td .../></tr> ...</table> <script> //从下往上滚 function scroll1(){ var table = document.getElementById("table1").getElementsByTagName("tbody")[0];//$("#table1 > tbody").get(0) var row = table.firstChild; table.removeChild(row); table.appendChild(row); //可以通过ajax去取后面的数据 } //从上往下滚 function scroll2(){ var table = document.getElementById("table1").getElementsByTagName("tbody")[0]; var row = table.lastChild; table.removeChild(row); table.insertBefore(row,table.firstChild); } </script><table class="class1" id="table1" onmouseover="this.int=window.setInterval('scroll2()',1000)" onmouseout="window.clearInterval(this.int)"> <tr><td>aaa</td><td>aaa</td></tr> <tr><td>bbb</td><td>bbb</td></tr> <tr><td>ccc</td><td>ccc</td></tr> <tr><td>xxx</td><td>xxx</td></tr> <tr><td>yyy</td><td>yyy</td></tr> <tr><td>zzz</td><td>zzz</td></tr></table> <script type="text/javascript" language="javascript"> function Scroll(opt,callback){ scrollBox = $("#table1"); if(!opt) var opt={}; var _this=scrollBox.eq(0).find("tr:first"); var lineH=_this.find("td:first").height(), //获取行高 line=opt.line?parseInt(opt.line,10):parseInt(scrollBox.height()/lineH,10), //每次滚动的行数,默认为一屏,即父容器高度 speed=opt.speed?parseInt(opt.speed,10):5000, //卷动速度,数值越大,速度越慢(毫秒) timer=opt.timer?parseInt(opt.timer,10):3000; //滚动的时间间隔(毫秒) if(line==0) line=1; var upHeight=0-line*lineH; //滚动函数 scrollUp=function(){ _this.animate({ marginTop:upHeight },speed,function(){ for(i=1;i<=line;i++){ _this.find("td:first").appendTo(_this); } _this.css({marginTop:0}); }); } //鼠标事件绑定 timerID = setInterval("scrollUp()",timer); _this.hover(function(){ clearInterval(timerID); },function(){ timerID = setInterval("scrollUp()",timer); }).mouseout(); } $(document).ready(function(){ Scroll({line:1,speed:600,timer:2000}); }); </script> 你确定不工作? 我那个ie8 firefox4下都可以啊 classnameextendsjava, 我把您的代码拷贝保存为一个HTML文件,双击执行(ie/firefox),只显示DIV的内容,根本不滚动啊。是不是代码不全呢? 晕 你不会html???<html><head><script> //从下往上滚 function scroll1(){ var table = document.getElementById("table1").getElementsByTagName("tbody")[0];//$("#table1 > tbody").get(0) var row = table.firstChild; table.removeChild(row); table.appendChild(row); //可以通过ajax去取后面的数据 } //从上往下滚 function scroll2(){ var table = document.getElementById("table1").getElementsByTagName("tbody")[0]; var row = table.lastChild; table.removeChild(row); table.insertBefore(row,table.firstChild); } </script></head><body><table class="class1" id="table1" onmouseover="this.int=window.setInterval('scroll2()',1000)" onmouseout="window.clearInterval(this.int)"> <tr><td>aaa</td><td>aaa</td></tr> <tr><td>bbb</td><td>bbb</td></tr> <tr><td>ccc</td><td>ccc</td></tr> <tr><td>xxx</td><td>xxx</td></tr> <tr><td>yyy</td><td>yyy</td></tr> <tr><td>zzz</td><td>zzz</td></tr></table></body></html> 以下代码经过FF测试注意配置jquery引用<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><script src="jquery-1.3.2.min.js"></script><script>$(function(){ //t=setTimeout("show()",1000); t=setInterval("show()",1000) $("#table1").mouseover(function(){ //alert($("#table1 tr:first").children("td:first").text()); //$("#table1 tr:first").appendTo($(this)); clearInterval(t); //window.clearInterval(this.int) }).mouseout(function(){ t=setInterval("show()",1000); //window.setInterval('scroll2()',1000) }) //window.setInterval('scroll2()',1000)})function show(){ $("#table1 tr:first").appendTo($("#table1")); //alert('aaaa'); //$("#table1 tr:first").appendTo($("#table1")); //$("#table1 tr:first").remove(); } </script></head><body><table id="table1"> <tr><td>aaa</td><td>aaa</td></tr> <tr><td>bbb</td><td>bbb</td></tr> <tr><td>ccc</td><td>ccc</td></tr> <tr><td>xxx</td><td>xxx</td></tr> <tr><td>yyy</td><td>yyy</td></tr> <tr><td>zzz</td><td>zzz</td></tr></table></body></html> 试了一下 ,classnameextendsjava 提供的代码不行。 如果普通需求 我认为没必要用JS<marquee direction="up" style="height:100px;" onmouseover="this.stop();" onmouseout="this.start();"> <table id="userlist" name="hh"> <tbody> <tr> <td>1</td> <td>2</td> <td>3</td> <td>4</td> </tr> <tr> <td>11</td> <td>22</td> <td>33</td> <td>44</td> </tr> <tr> <td>111</td> <td>222</td> <td>333</td> <td>444</td> </tr> <tr> <td>111</td> <td>222</td> <td>333</td> <td>444</td> </tr> <tr> <td>11</td> <td>22</td> <td>33</td> <td>44</td> </tr> </tbody> </table></marquee> 关于ext2.02在IE8下运行有bug return 语句在函数之外?求解 JS实现简单拖拽 如何判断一段脚本是写在文档的哪个地置? 如何判断一个节点是另一个节点的子节点或者孙子辈节点呢? 这段代码我在本地机试验时可以弹出无标题栏的窗口,为什么传到服务器上后再运行后弹出的窗口就带标题栏了? 请教JS读取目录名问题 问大家一个少见的问题。解决者独得100分 诚意请教:如何实现下拉多选框? openlayers在重新画图(圆或矩形)如何清除之前的图 IE浏览器中为什么window.opener.location.href 无效 火狐浏览器怎样异步读取xml
var areaEl = document.getElementById("lastNewsCon"),//放Table的层
areaHeight = 200,
conEl = document.getElementById("newsCon"),//Table
height = conEl.offsetHeight,
stopscroll = false;
globalParams.newsScroll.areaEl = areaEl;
globalParams.newsScroll.stopscroll = stopscroll;
globalParams.newsScroll.height = height;
//初始化滚动内容
if (!$.trim(conEl.innerHTML) || height < areaHeight)
return;
conEl.innerHTML += conEl.innerHTML;
conEl.onmouseover = function() {
globalParams.newsScroll.stopscroll = true;
return false;
}
conEl.onmouseout = function() {
globalParams.newsScroll.stopscroll = false;
return false;
}
window.setInterval("scrollUp()", 200);
}
function scrollUp() {
var p = globalParams.newsScroll;
if (p.stopscroll == true) return;
if (p.areaEl.scrollTop == p.height - 2)
p.areaEl.scrollTop = 0;
else
p.areaEl.scrollTop += 2;
}
<tr><td .../><td .../></tr>
<tr><td .../><td .../></tr>
<tr><td .../><td .../></tr>
...
</table>
<script>
//从下往上滚
function scroll1(){
var table = document.getElementById("table1").getElementsByTagName("tbody")[0];//$("#table1 > tbody").get(0)
var row = table.firstChild;
table.removeChild(row);
table.appendChild(row); //可以通过ajax去取后面的数据
}
//从上往下滚
function scroll2(){
var table = document.getElementById("table1").getElementsByTagName("tbody")[0];
var row = table.lastChild;
table.removeChild(row);
table.insertBefore(row,table.firstChild);
}
</script><table class="class1" id="table1" onmouseover="this.int=window.setInterval('scroll2()',1000)" onmouseout="window.clearInterval(this.int)">
<tr><td>aaa</td><td>aaa</td></tr>
<tr><td>bbb</td><td>bbb</td></tr>
<tr><td>ccc</td><td>ccc</td></tr>
<tr><td>xxx</td><td>xxx</td></tr>
<tr><td>yyy</td><td>yyy</td></tr>
<tr><td>zzz</td><td>zzz</td></tr>
</table>
<script type="text/javascript" language="javascript">
function Scroll(opt,callback){
scrollBox = $("#table1");
if(!opt) var opt={};
var _this=scrollBox.eq(0).find("tr:first");
var lineH=_this.find("td:first").height(), //获取行高
line=opt.line?parseInt(opt.line,10):parseInt(scrollBox.height()/lineH,10), //每次滚动的行数,默认为一屏,即父容器高度
speed=opt.speed?parseInt(opt.speed,10):5000, //卷动速度,数值越大,速度越慢(毫秒)
timer=opt.timer?parseInt(opt.timer,10):3000; //滚动的时间间隔(毫秒)
if(line==0) line=1;
var upHeight=0-line*lineH;
//滚动函数
scrollUp=function(){
_this.animate({
marginTop:upHeight
},speed,function(){
for(i=1;i<=line;i++){
_this.find("td:first").appendTo(_this);
}
_this.css({marginTop:0});
});
}
//鼠标事件绑定
timerID = setInterval("scrollUp()",timer);
_this.hover(function(){
clearInterval(timerID);
},function(){
timerID = setInterval("scrollUp()",timer);
}).mouseout();
}
$(document).ready(function(){
Scroll({line:1,speed:600,timer:2000});
});
</script>
<head>
<script>
//从下往上滚
function scroll1(){
var table = document.getElementById("table1").getElementsByTagName("tbody")[0];//$("#table1 > tbody").get(0)
var row = table.firstChild;
table.removeChild(row);
table.appendChild(row); //可以通过ajax去取后面的数据
}
//从上往下滚
function scroll2(){
var table = document.getElementById("table1").getElementsByTagName("tbody")[0];
var row = table.lastChild;
table.removeChild(row);
table.insertBefore(row,table.firstChild);
}
</script>
</head>
<body>
<table class="class1" id="table1" onmouseover="this.int=window.setInterval('scroll2()',1000)" onmouseout="window.clearInterval(this.int)">
<tr><td>aaa</td><td>aaa</td></tr>
<tr><td>bbb</td><td>bbb</td></tr>
<tr><td>ccc</td><td>ccc</td></tr>
<tr><td>xxx</td><td>xxx</td></tr>
<tr><td>yyy</td><td>yyy</td></tr>
<tr><td>zzz</td><td>zzz</td></tr>
</table>
</body>
</html>
注意配置jquery引用<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<script src="jquery-1.3.2.min.js"></script>
<script>
$(function(){
//t=setTimeout("show()",1000);
t=setInterval("show()",1000)
$("#table1").mouseover(function(){
//alert($("#table1 tr:first").children("td:first").text());
//$("#table1 tr:first").appendTo($(this));
clearInterval(t);
//window.clearInterval(this.int)
}).mouseout(function(){
t=setInterval("show()",1000);
//window.setInterval('scroll2()',1000)
})
//window.setInterval('scroll2()',1000)
})function show(){
$("#table1 tr:first").appendTo($("#table1"));
//alert('aaaa');
//$("#table1 tr:first").appendTo($("#table1"));
//$("#table1 tr:first").remove();
}
</script>
</head>
<body>
<table id="table1">
<tr><td>aaa</td><td>aaa</td></tr>
<tr><td>bbb</td><td>bbb</td></tr>
<tr><td>ccc</td><td>ccc</td></tr>
<tr><td>xxx</td><td>xxx</td></tr>
<tr><td>yyy</td><td>yyy</td></tr>
<tr><td>zzz</td><td>zzz</td></tr>
</table>
</body>
</html>
<table id="userlist" name="hh">
<tbody>
<tr>
<td>1</td>
<td>2</td>
<td>3</td>
<td>4</td>
</tr>
<tr>
<td>11</td>
<td>22</td>
<td>33</td>
<td>44</td>
</tr>
<tr>
<td>111</td>
<td>222</td>
<td>333</td>
<td>444</td>
</tr>
<tr>
<td>111</td>
<td>222</td>
<td>333</td>
<td>444</td>
</tr>
<tr>
<td>11</td>
<td>22</td>
<td>33</td>
<td>44</td>
</tr>
</tbody>
</table>
</marquee>