基于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. mysql 版本在springboot 中定义位置

  2. 论文笔记:(ICML2020)On Learning Sets of Symmetric Elements

    目录 摘要 一.引言 二.先前的工作 三.基础 3.1 符号和基本定义 3.2 G-不变网络 3.3 描述等变层 3.4 Deep sets 四.DSS层 4.1 对称元素集合 4.2 等变层的表征 ...

  3. 洛谷P3052题解

    题面 看起来非常简单,但是细节多的一批的状压DP入门题. 我设 \(f_i\) 为 \(i\) 状态时最小分组数, \(g_i\) 为 \(i\) 状态时最后一组剩余空间. 对于每一个 \(i\) , ...

  4. PHP-Audit-Labs-Day2 - filter_var函数缺陷

    目录 分析 示例 payload 修复建议 Day02-CTF题解 参考链接 分析 先看源码 // composer require "twig/twig" require 've ...

  5. Quartz部署Linux的一个坑

    前言 最近做了一个项目,使用Quartz做定时任务,然后部署到了Linux服务器上,但是竟然很惊奇的跑不起来,已经在阿里云上的Linux上验证无数次了,后来经过不懈努力,终于发现了问题,我自己的Lin ...

  6. Use Module and Function instead of Class in Python

    The following scripts run in ipython demonstrate the differences between instance method and static ...

  7. Linux之cat tail less常见用法

    1.cat 通常查找出错误日志 cat error.log | grep 'foo' , 这时候我们还有个需求就是输出当前这个日志的前后几行: cat error.log | grep -C 10 ' ...

  8. Linux 基础学习篇笔记 Linux基础知识

    哎呀,翻到第一篇,映出眼帘的标题:从Unix到Linux(我就知道学习不能急,不能像我,看个简介,就赶忙去查了,原来作者在这里给出详细的介绍了) 1.1根据书上写的,原来linux的内核是被Linus ...

  9. Supervisord远程命令执行漏洞(CVE-2017-11610)复现

    Supervisord远程命令执行漏洞(CVE-2017-11610)复现 文章首发在安全客 https://www.anquanke.com/post/id/225451 写在前面 因为工作中遇到了 ...

  10. 那些shellcode免杀总结

    首发先知: https://xz.aliyun.com/t/7170 自己还是想把一些shellcode免杀的技巧通过白话文.傻瓜式的文章把技巧讲清楚.希望更多和我一样web狗也能动手做到免杀的实现. ...