zoukankan      html  css  js  c++  java
  • Framework7 无限滚动

    html结构

    <div class="page">
        <div class="page-content infinite-scroll">
            ... 
        </div>
    </div>
    <div class="page-content infinite-scroll">
      <div class="list-block">
        <ul>
          <li class="item-content">
            <div class="item-inner">
              <div class="item-title">Item 1</div>
            </div>
          </li>
          <li class="item-content">
            <div class="item-inner">
              <div class="item-title">Item 2</div>
            </div>
          </li>
          ...
          <li class="item-content">
            <div class="item-inner">
              <div class="item-title">Item 20</div>
            </div>
          </li>
        </ul>
      </div>
      <!-- Preloader -->
      <div class="infinite-scroll-preloader">
        <div class="preloader"></div>
      </div>
    </div> 

    js调用

    var myApp = new Framework7(); 
     
    var $$ = Dom7;
     
    // Loading flag
    var loading = false;
     
    // Last loaded index
    var lastIndex = $$('.list-block li').length;
     
    // Max items to load
    var maxItems = 60;
     
    // Append items per load
    var itemsPerLoad = 20;
     
    // Attach 'infinite' event handler
    $$('.infinite-scroll').on('infinite', function () {
     
      // Exit, if loading in progress
      if (loading) return;
     
      // Set loading flag
      loading = true;
     
      // Emulate 1s loading
      setTimeout(function () {
        // Reset loading flag
        loading = false;
     
        if (lastIndex >= maxItems) {
          // Nothing more to load, detach infinite scroll events to prevent unnecessary loadings
          myApp.detachInfiniteScroll($$('.infinite-scroll'));
          // Remove preloader
          $$('.infinite-scroll-preloader').remove();
          return;
        }
     
        // Generate new items HTML
        var html = '';
        for (var i = lastIndex + 1; i <= lastIndex + itemsPerLoad; i++) {
          html += '<li class="item-content"><div class="item-inner"><div class="item-title">Item ' + i + '</div></div></li>';
        }
     
        // Append new items
        $$('.list-block ul').append(html);
     
        // Update last loaded index
        lastIndex = $$('.list-block li').length;
      }, 1000);
    }); 
  • 相关阅读:
    table常用功能总结
    oracle中number类型的数据使用as string 得到的值为null
    Oracle连接超时
    VS重新生成后仍然执行旧代码
    .NET 环境中使用RabbitMQ
    使用CLR Function代替T-SQL函数,优化检索效率
    SQL Server CLR 使用 C# 自定义存储过程和触发器
    OrderBy排序和IComparer的使用
    System.net.mail 使用ssl发送邮件失败
    C#利用CDO.Message发送邮件
  • 原文地址:https://www.cnblogs.com/xwlong/p/7903297.html
Copyright © 2011-2022 走看看