【发布时间】:2013-04-17 09:28:00
【问题描述】:
我在做一个项目时发现了一些很酷的代码。它影响 html 表的 jquery。它基本上使 tbody 向上滚动,因此顶部的行向下移动,其余行向上移动。这就是我的意思:
<tr><td>1a</td><td>2</td><td>3</td><td>4</td><td>5</td><td>6</td></tr>
<tr><td>1b</td><td>2</td><td>3</td><td>4</td><td>5</td><td>6</td></tr>
<tr><td>1c</td><td>2</td><td>3</td><td>4</td><td>5</td><td>6</td></tr>
<tr><td>1d</td><td>2</td><td>3</td><td>4</td><td>5</td><td>6</td></tr>
变成:
<tr><td>1b</td><td>2</td><td>3</td><td>4</td><td>5</td><td>6</td></tr>
<tr><td>1c</td><td>2</td><td>3</td><td>4</td><td>5</td><td>6</td></tr>
<tr><td>1d</td><td>2</td><td>3</td><td>4</td><td>5</td><td>6</td></tr>
<tr><td>1a</td><td>2</td><td>3</td><td>4</td><td>5</td><td>6</td></tr>
第 1a 行移至底部。这是我正在使用的 jquery 代码:
<script type="text/javascript">
$.fn.infiniteScrollUp=function(){
var self=this,kids=self.children()
kids.slice(20).hide()
setInterval(function(){
kids.filter(':hidden').eq(0).fadeIn()
kids.eq(0).fadeOut(function(){
$(this).appendTo(self)
kids=self.children()
})
},5000)
return this
}
$(function(){
$('tbody').infiniteScrollUp()
})
</script>
这很好用。没问题。然而,当我试图让它向上滑动时,就像某种卷轴一样,它要么 1)停止将其添加到底部,2)停止从顶部移除它们,要么 3)什么都没有。如何更改此效果以向上滑动?
这是jsfiddle 示例。
【问题讨论】:
-
最大的问题是移动台体而不移动台头。我一直在环顾四周,我可以找到一种方法来做到这一点。如果我可以在不移动 thead 的情况下移动 tbody,那么滑动 tbody 会很容易
-
事实上,我根本无法对 tbody 应用任何位置样式。他们什么都不做。
标签: javascript jquery scroll html-table