基于Bootstrap v4.1.1 & Bootstrap-table-1.14.1实现数据瀑布流
基于Bootstrap-table-1.14.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>
初始化表格
// 当前页码
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实现数据瀑布流的更多相关文章
- Bootstrap v4.0.0-alpha.5 发布,大量更新
Bootstrap v4.0.0-alpha.5 发布了,Bootstrap是快速开发Web应用程序的前端工具包.它是一个CSS和HTML的集合,它使用了最新的浏览器技术,给你的Web开发提供了时尚的 ...
- 强大!基于拖放布局的 Twitter Bootstrap 网站生成器
强大!基于拖放布局的 Twitter Bootstrap 网站生成器 网址如下 http://www.layoutit.com/build http://demo.sc.chinaz.com/File ...
- bootstrap4学习—Bootstrap v4.0.0-alpha.6的快速参考
下面为Bootstrap v4.0.0-alpha.6中的代码快速检索地址: 网址:https://hackerthemes.com/bootstrap-cheatsheet/ 在使用bootstra ...
- [Bootstrap]7天深入Bootstrap(1)入门准备
由于申请了一个域名,一个云主机,开始弄个人网站. 发现Bootstrap非常方便,和重要,故开始学习与分享关于Bootstrap的技术. 推个广告 个人网站:http://www.neverc.cn ...
- 【Bootstrap】1.初识Bootstrap
作为Web前端开发框架,Bootstrap为大多数标准的UI设计常见提供了用户友好.扩浏览器的解决方案. 1.下载Bootstrap 打开官方网址 http://getbootstrap.com/ 进 ...
- bootstrap学习--什么是bootstrap
2011年,twitter的“一小撮”工程师为了提高他们内部的分析和管理能力,用业余时间为他们的产品构建了一套易用.优雅.灵活.可扩展的前端工具集--BootStrap.Bootstrap由MARK ...
- 纯手工打造漂亮的瀑布流,五大插件一个都不少Bootstrap+jQuery+Masonry+imagesLoaded+Lightbox!
前两天写的文章<纯手工打造漂亮的垂直时间轴,使用最简单的HTML+CSS+JQUERY完成100个版本更新记录的华丽转身!>受到很多网友的喜爱,今天特别推出姊妹篇<纯手工打造漂亮的瀑 ...
- bootstrap上传表单的时候上传的数据默认是0 一定要小心
bootstrap上传表单的时候上传的数据默认是0 一定要小心
- [置顶] 纯手工打造漂亮的瀑布流,五大插件一个都不少Bootstrap+jQuery+Masonry+imagesLoaded+Lightbox!
前两天写的文章<纯手工打造漂亮的垂直时间轴,使用最简单的HTML+CSS+JQUERY完成100个版本更新记录的华丽转身!>受到很多网友的喜爱,今天特别推出姊妹篇<纯手工打造漂亮的瀑 ...
随机推荐
- PHP-FPM 远程代码执行漏洞(CVE-2019-11043)
影响范围 在 Nginx + PHP-FPM 环境下,当启用了上述 Nginx 配置后,以下 PHP 版本受本次漏洞影响,另外,PHP 5.6版本也受此漏洞影响,但目前只能 Crash,不可以远程代码 ...
- leetcode 有效三角形的个数
题目描述: 平明伞兵解法: 既然要求满足三角形要求的三边,简单来说,就是最短两边之和大于第三边,所以,第一步Arrays.sort().先排序,然后直接伞兵暴力法,三重循环.当然最后肯定是能跑出来的, ...
- 如何从二维平面n个点中寻找距离最近两个点?
如何理解分治算法 什么是分治算法?简单来说就是"分而治之",也就是将原问题划分成n个规模较小的,并且结构与原问题相似的子问题,然后去递归地解决这些子问题,最后再合并其结果,就得到原 ...
- CTF_论剑场_Web20
直接上脚本,多跑几次就能出flag import requests import re url = "http://123.206.31.85:10020/" s = reques ...
- Apache httpd的web服务
Apache httpd的web服务 适用于Unix/Linux下的web服务器软件 Apache httpd(开源且免费),虚拟主机,支持HTTPS协议,支持用户认证,支持单个目录的访问控制,支持U ...
- 阿里、腾讯、百度、网易、美团Android面试经验分享,拿到了百度、腾讯offer
基本情况 2021届普通本科,Android开发岗. 此文主要是2020年秋招面试经验汇总,最终拿到了百度.腾讯的offer. 主要包括阿里三面,腾讯四面,百度三面,网易三面,美团一场面完. 阿里(由 ...
- .net core 响应的json数据驼峰显示问题。
在.net core webapi中,默认响应的json数据是以驼峰显示的,即首字母小写的方式.如果让其正常显示,只需要在全局配置即可.代码如下图: 配置之后,响应数据就不会再以驼峰的形式展示了.而是 ...
- Package Repository for Ubuntu Offline Installation
For example, we need install "unzip" command on a Ubuntu machine without Internet. On a on ...
- SpringBoot中实现支付宝支付
本文只介绍当面付(扫码支付)和APP支付 一. 接入准备 #这里分两种情况,正式环境和沙箱环境,本文使用沙箱环境 1.进入支付宝开放平台,创建应用 登录 支付宝开放平台,创建应用并提交审核,审核通过后 ...
- wpf 实现印章,公章效果
能写一些特定外观的控件,是一个做界面开发的程序员的基础技能.基本上,不管你是做web,QT,MFC,Winform,WPF等等,如果自己看到一个比较好看的有趣的效果,能大致推断出它的实现方式并照猫画虎 ...