基于Bootstrap-table-1.14.1实现数据瀑布流

  1. HTML代码

    <div id="AvgWaitAndAvgTimeServiceTimeData_hall">
    <div class="charts-area mg-b-15 mt-3">
    <div class="container-fluid">
    <div class="row">
    <div class="col-lg-12 colm-md-12 col-sm-12 col-xs-12">
    <div class="row">
    <div class="col-md-12">
    <div id="AvgServiceAndWaitTime_hall_table_toolbar">
    <button id="AvgServiceAndWaitTime_hall_table_export" class="btn btn-outline-primary" >
    <i class="fa fa-download" ></i> 导出
    </button>
    </div>
    <table id="AvgServiceAndWaitTime_hall_table" data-height="400" class="table table-hover mb-0 text-center" data-toolbar="#AvgServiceAndWaitTime_hall_table_toolbar">
    <thead>
    <tr>
    <th data-field="column1">column1</th>
    <th data-field="column2">column2</th>
    <th data-field="column3">column3</th>
    <th data-field="column4">column4</th>
    <th data-field="column5">column5</th>
    </tr>
    </thead>
    </table>
    </div>
    </div>
    </div>
    </div>
    </div>
    </div>
    </div>
  2. 初始化表格

    // 当前页码
    var currentPage = 1;
    // 总页数
    var totalPage = 0; // 初始化表格函数
    function loadHallAvgWaitTimeTable() {
    // 定义表格对象
    var $AvgServiceAndWaitTime_hall_table = $("#AvgServiceAndWaitTime_hall_table");
    // 开始初始化表格,因为要实现瀑布流的效果,所以需要将分页功能禁用掉
    $AvgServiceAndWaitTime_hall_table.bootstrapTable('destroy').bootstrapTable({
    url: 'xxx/xxx/xxx.do',
    method: 'GET',
    dataType: 'json',
    striped: false,
    editable: false,
    cache: false,
    undefinedText: '',
    pagination: false,
    sortable: false,
    data_local: 'zh_US',
    idField: 'id',
    contentType: 'application/x-www-form-urlencoded',
    // 设置查询参数:首次加载十条数据
    queryParams:
    function () {
    return {
    pageSize: 10,
    PageNumber: 1,
    timeStamp: new Date().getTime()
    }
    },
    // 对响应数据进行处理:将响应数据中的总页数取出,并赋值给totalPage变量
    responseHandler: function (res) {
    totalPage = res.obj.pages;
    return eval(res.obj.rows);
    },
    // 数据加载成功后执行:这里主要对表格内容部分的滚动条进行监听,当监听到滚动条滑动到底部的时候,自动开始获取下一页数据,并将下一页数据拼接到表格中
    onLoadSuccess: function () {
    // 标识位
    var isTrue = true;
    // 对表格内容部分添加滚动监听事件
    document.querySelector("#AvgWaitAndAvgTimeServiceTimeData_hall .fixed-table-body").addEventListener("scroll", function () {
    // 获取表格数据展示部分(用户可直观的看到数据的部分)的高度,这部分高度是固定的
    var nDivHight = $("#AvgWaitAndAvgTimeServiceTimeData_hall .fixed-table-body").height();
    // 定义滚动距离总长变量(注意不是滚动条的长度),使用HTML DOM元素对象的scrollHeight属性:获取整个元素的高度(包括带滚动条的隐蔽的地方)
    var nScrollHeight = $(this)[0].scrollHeight;
    // 滚动到的当前位置:使用HTML DOM元素对象的scrollTop属性:获取当前视图中的实际元素的顶部边缘和顶部边缘之间的距离
    var nScrollTop = $(this)[0].scrollTop;
    // 使用JavaScript:Math对象的ceil方法(向上取整):相当于当前内容区域的真实高度,包括不可见部分
    var flagHeight = Math.ceil(nScrollTop + nDivHight);
    // 判断页码:当前页面小于总页码
    if (currentPage < totalPage) {
    // 当前内容区域的真实高度 < 滚动条整体高度(包括隐藏看不见的地方) -500:证明滚动条马上就要滑动到底部了,此时开始加载下一页的数据
    if (flagHeight >= (nScrollHeight - 500)) {
    if (isTrue) {
    console.log("当前页码:"+currentPage+"共多少页:"+totalPage+"-----滚动条到底部自动加载下一页")
    setTimeout(function () {
    // 页码加1
    currentPage++;
    // 获取下一页数据,并追加到表格中
    getList();
    }, 100);
    //杀死标识位,阻止多次请求
    isTrue = false;
    }
    }
    }
    }); function getList() {
    $.ajax({
    url: 'xxx/xxx/xxx.do',
    method: 'GET',
    dataType: 'json',
    data: {
    PageNumber: currentPage,
    pageSize: 20
    },
    success: function (data) {
    $("#AvgServiceAndWaitTime_hall_table").bootstrapTable("append", data.obj.rows);
    isTrue = true;
    }
    })
    }
    }
    })
    }

基于Bootstrap v4.1.1 & Bootstrap-table-1.14.1实现数据瀑布流的更多相关文章

  1. Bootstrap v4.0.0-alpha.5 发布,大量更新

    Bootstrap v4.0.0-alpha.5 发布了,Bootstrap是快速开发Web应用程序的前端工具包.它是一个CSS和HTML的集合,它使用了最新的浏览器技术,给你的Web开发提供了时尚的 ...

  2. 强大!基于拖放布局的 Twitter Bootstrap 网站生成器

    强大!基于拖放布局的 Twitter Bootstrap 网站生成器 网址如下 http://www.layoutit.com/build http://demo.sc.chinaz.com/File ...

  3. bootstrap4学习—Bootstrap v4.0.0-alpha.6的快速参考

    下面为Bootstrap v4.0.0-alpha.6中的代码快速检索地址: 网址:https://hackerthemes.com/bootstrap-cheatsheet/ 在使用bootstra ...

  4. [Bootstrap]7天深入Bootstrap(1)入门准备

    由于申请了一个域名,一个云主机,开始弄个人网站. 发现Bootstrap非常方便,和重要,故开始学习与分享关于Bootstrap的技术. 推个广告 个人网站:http://www.neverc.cn ...

  5. 【Bootstrap】1.初识Bootstrap

    作为Web前端开发框架,Bootstrap为大多数标准的UI设计常见提供了用户友好.扩浏览器的解决方案. 1.下载Bootstrap 打开官方网址 http://getbootstrap.com/ 进 ...

  6. bootstrap学习--什么是bootstrap

    2011年,twitter的“一小撮”工程师为了提高他们内部的分析和管理能力,用业余时间为他们的产品构建了一套易用.优雅.灵活.可扩展的前端工具集--BootStrap.Bootstrap由MARK ...

  7. 纯手工打造漂亮的瀑布流,五大插件一个都不少Bootstrap+jQuery+Masonry+imagesLoaded+Lightbox!

    前两天写的文章<纯手工打造漂亮的垂直时间轴,使用最简单的HTML+CSS+JQUERY完成100个版本更新记录的华丽转身!>受到很多网友的喜爱,今天特别推出姊妹篇<纯手工打造漂亮的瀑 ...

  8. bootstrap上传表单的时候上传的数据默认是0 一定要小心

    bootstrap上传表单的时候上传的数据默认是0 一定要小心

  9. [置顶] 纯手工打造漂亮的瀑布流,五大插件一个都不少Bootstrap+jQuery+Masonry+imagesLoaded+Lightbox!

    前两天写的文章<纯手工打造漂亮的垂直时间轴,使用最简单的HTML+CSS+JQUERY完成100个版本更新记录的华丽转身!>受到很多网友的喜爱,今天特别推出姊妹篇<纯手工打造漂亮的瀑 ...

随机推荐

  1. Java大整形BigInteger的用法

    基本类型int有32位,范围是:[-2147483648, 2147483647](正负21亿多) 基本类型long有64位,范围是:[-9223372036854775808, 9223372036 ...

  2. java垃圾回收机制学习总结

    最近学习了一下java垃圾回收机制,将其主要内容大致总结一下: 1.什么是垃圾回收机制 java GC机制(garbage collection,垃圾收集,垃圾回收),是java特有的机制,作为jav ...

  3. 阿里云IoT初试

    本文从概念到实战,以一个假想产品--"电子货架标签"(Electronic Shelf Label,以下简称ESL)为例,介绍基于阿里云IoT的物联网应用开发. 数据交互流程 以云 ...

  4. Unsupported major.minor version 52.0解决办法【转】

    1.首先解释一下报错原因: stanford parser和jdk版本对应关系 J2SE8=52, J2SE7=51, J2SE6.0=50, J2SE5.0=49, JDK1.4=48, JDK1. ...

  5. OpenFaaS实战之四:模板操作(template)

    欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...

  6. 开机时自动启动的AutoHotkey脚本 2019年10月09日

    ;;; 开机时自动启动的AutoHotkey脚本 2019年10月09日;; http://www.autoahk.com/archives/16600; https://www.cnblogs.co ...

  7. noip模拟测试16

    这次考试,难度还是不小的,先说一下考试过程,首先看一遍题,觉得开题顺序1 3 2, 然后我就先打了第一题,我当时可能是受到之前做题的限制了,觉得他只能每次走一 格,也就是一个单位长度,但是实际上,他甚 ...

  8. 冒泡排序、选择排序、直接插入排序、快速排序、折半查找>从零开始学JAVA系列

    目录 冒泡排序.选择排序.直接插入排序 冒泡排序 选择排序 选择排序与冒泡排序的注意事项 小案例,使用选择排序完成对对象的排序 直接插入排序(插入排序) 快速排序(比较排序中效率最高的一种排序) 折半 ...

  9. Java8 Lambda表达式(二)

    目录 一.Java8 内置的四大核心函数式接口 1. 消费型接口 Consumer 2. 供给型接口 Supplier 3. 函数型接口 Function 4.断言型接口 Predicate 二.方法 ...

  10. 洛谷P1879题解

    题面 显然是个状压DP. 看数据范围,不难发现算法复杂度应该是 \(O(n\times 2^n \times 2^n)\) . 显然第一个 \(n\) 是遍历每一行的土地. 后面两个 \(2^n\) ...