【问题标题】:How to append more rows when scrolling to the Bottom with Javascript使用Javascript滚动到底部时如何附加更多行
【发布时间】:2014-03-27 04:43:22
【问题描述】:

它在 SharePoint 2010 中,但我认为它可能会正常运行。

1。每页的项目限制默认为 30。因此,我已经完成了在页面加载时显示 30 行的列表,然后我将鼠标向下滚动到底部并隐藏了最后 10 行。

摘要:页面加载 30 行 -> 向下滚动到底部 -> 显示 20 行(隐藏最后 10 行)。

很抱歉给您带来不便,但我需要至少有 10 个声望才能发布图片或超过 2 个链接。

物品限制:[http://upanh.biz/images/2014/03/27/itemlimit.png]

向下滚动到底部时:http://upanh.biz/images/2014/03/27/bottom.png

列表已更改:http://upanh.biz/images/2014/03/27/final.png

问题:我不知道如何在不重新加载的情况下向下滚动到页面底部时再追加 10 行(项目限制可以修改为 100 个项目页)。

摘要:页面加载 30 行 -> 向下滚动到底部 -> 显示 40 行

1

Javascript

$(document).ready(function() {
$('#WebPartWPQ1 table table').eq(0).attr("id", "myNewTable");
$("#myNewTable tr").slice(30).hide();
var rowCount = $('#myNewTable tr').length;
//alert(rowCount);
$(window).scroll(function () {
    if ($(window).scrollTop() + $(window).height() == $(document).height()) {
        $("#myNewTable tr").slice(20).hide();
        alert("bottom");
    }
});

HTML

<div id="WebPartWPQ1">
<div>
    <table>
    <table>
        <tbody>
            <tr><td>something1</td></tr>
            <tr><td>something2</td></tr>
            <tr><td>something3</td></tr>
            <tr><td>something4</td></tr>
            <tr><td>something5</td></tr>
            <tr><td>something6</td></tr>
            <tr><td>something7</td></tr>
            <tr><td>something8</td></tr>
            <tr><td>something9</td></tr>
            <tr><td>something10</td></tr>
            <tr><td>something11</td></tr>
            <tr><td>something12</td></tr>
            <tr><td>something13</td></tr>
            <tr><td>something14</td></tr>
            <tr><td>something15</td></tr>
            <tr><td>something16</td></tr>
            <tr><td>something17</td></tr>
            <tr><td>something18</td></tr>
            <tr><td>something19</td></tr>
            <tr><td>something20</td></tr>
            <tr><td>something21</td></tr>
            <tr><td>something22</td></tr>
            <tr><td>something23</td></tr>
            <tr><td>something24</td></tr>
            <tr><td>something25</td></tr>
            <tr><td>something26</td></tr>
            <tr><td>something27</td></tr>
            <tr><td>something28</td></tr>
            <tr><td>something29</td></tr>
            <tr><td>something30</td></tr>
            <tr><td>...more rows...</td></tr>
        </tbody>
    </table>
    </table>
    <table class="ms-bottompaging">something</table>
    <table id="Hero-WPQ1">something</table>
</div>

【问题讨论】:

    标签: javascript jquery html


    【解决方案1】:

    我想,这对你有用

     $(document).ready(function() { 
       $('#WebPartWPQ1 table table').eq(0).attr("id", "myNewTable"); 
       $("#myNewTable tr").slice(30).hide(); 
       var rowCount = $('#myNewTable tr').length; 
       //alert(rowCount); 
       var y = 0;
       $(window).scroll(function () {
        if ($(window).scrollTop() + $(window).height() == $(document).height()) {
          $("#myNewTable tr").slice(20).hide();
          var x = 0;
            /* Append next ten rows here */
            if(y < 20){ /* Maximum row you want to add*/
             for(var i=0;i<10;i++){
               x++;
               $("#myNewTable").append("<tr><td>something"+rowCount+i+"</td></tr>");
             }
             y += x;
            }else{
             return false;
            }
         } 
       });
    

    如果要显示数据库中接下来的 10 行数据,请使用 jquery 的 ajax() 而不是 for 循环。

    【讨论】:

    • @Smruti:感谢您的回复。现在,它可以工作了,但是当它到达最后一个项目时,我该如何停止它? upanh.biz/images/2014/03/27/bottom1.png
    • 当它到达最后一项时,只需使用'return false;'
    • @Smruti:谢谢,太好了。它返回最终结果,但当我向下滚动时它仍然加载更多,如下图 (1)。如何停止使用滚动条加载更多行?我真的想显示一些&lt;tr class=".." id="..."&gt;&lt;tr&gt; 如下图(2)? 这意味着在&lt;table&gt;中追加隐藏行 upanh.biz/images/2014/03/27/bottom2.png
    • 在 for 循环之前提供一个条件,如 if(rowcount
    • @Smruti:我试过了,但是没用。请看一下 - 我说的对吗? upanh.biz/images/2014/03/27/code.png
    猜你喜欢
    • 1970-01-01
    • 2016-04-07
    • 1970-01-01
    • 2018-05-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多