很久不写文档,平时只写日记,所以对这个有点生疏,如果写的不好别介意。

  今天闲的蛋疼,于是要写写白天的东西,并且以后也会一直更新(一直写)下去。

  时间太仓促了,这几个月,今天算最晚的一次凌晨1点,吃不消的路过。

  进入正题!

  这是一个每次点击添加指定数据的插件,基于jQuery封装,调用方法名batchLoading,简单到一键操作,不用每次都来一次了,爽滋滋。

  实现方法如下:

  HTML

<div class="default-batch-box batch-box">
<ul class="default-list-box">
</ul>
<div class="default-batch-unlock">
<span></span>
</div>
</div>

  JAVASCRIPT

<script>
var data = [1,2,3,4,'a','b','c','d',1,2,3,4,5,6,9,]
batchLoading({
node: ['.default-list-box','.default-batch-unlock'], // 第一个节点为添加数据class 第二个为点击事件class
data: data, // 总数据
default: 2, // 默认从第几条数据开始
everyTime: 4, // 每次添加多少条数据
method: function (data) { // 循环数据
var str = ''
var tiny = data
str += '<li>'
str += '<span>' + tiny +'</span>'
str += '<span>上海</span>'
str += '<span>机械业</span>'
str += '<span>加载器</span>'
str += '<span>去参团</span>'
str += '</li>'
return str
},
complate: function () {
alert('加载结束')
}
})
</script>

  封装的方法 batchLoading.js

 (function  (g) {
var _plus = 1
function addBatchTemplate (data, start, stop, everyTimes, fallBack, complate) {
var str = ''
if ((stop-everyTimes) <= data.length) {
for (var i = start; i < stop; i++) {
if (data[i]){
var tiny = data[i]
str += fallBack(tiny)
}
}
}
else {
complate()
}
return str
} function implementionAddBatchTemplate (option, start, stop, everyTimes, fallBack, complate) {
$(option.node[0]).append(addBatchTemplate(option.data, start, stop, everyTimes, fallBack, complate))
} function excuteBatchLoadData (option, everyTimes, fallBack, complate) {
var start = _plus
implementionAddBatchTemplate(option, start * everyTimes, ++_plus * everyTimes, everyTimes, fallBack, complate)
} function handleEventLoadData (option, everyTimes, fallBack, complate) {
$(option.node[1]).unbind('click').on('click', function (e) {
excuteBatchLoadData(option, everyTimes, fallBack, complate)
})
} function batchLoading (params) {
implementionAddBatchTemplate(
{
data: params.data,
node: params.node
},
params.default,
params.everyTime,
params.everyTime,
params.method,
params.complate
)
handleEventLoadData(
{
data: params.data,
node: params.node
},
params.everyTime,
params.method,
params.complate
)
} g.batchLoading = batchLoading
})(this ? window : global)

  上效果图,目前看到的是每点击一次加4条数据,默认从第二条数据开始,完成之后点击调用complate方法。

  演示DEMO(从0开始)点击加载数据

  git代码:https://github.com/ZWLTZ/batchLoading/tree/master

JS每点击一次添加多少条数据的更多相关文章

  1. mybatis+oracle添加一条数据并返回所添加数据的主键问题

    最近做mybatis+oracle项目的时候解决添加一条数据并返回所添加数据的主键问题 controller层 @RequestMapping("/addplan") public ...

  2. 新建一个DataTable如何手动给其添加多条数据!

    早晨起来,想起昨天利用winform做类似于sqlserver数据库导入数据功能的时候,用到了新建一个DataTable手动给其添加多条数据,平时用不到,需要的时候想不起来了,这次不妨把他记下来.以下 ...

  3. 向数据库添加100W 条数据 性能测试

    向数据库添加100W 条数据 性能测试 : 参考的相关网站目录: JDBC实现往MySQL插入百万级数据 https://www.cnblogs.com/fnz0/p/5713102.html MyS ...

  4. mvc添加多条数据到数据库

    from : http://www.th7.cn/Program/net/201502/387849.shtml mvc的视图太强大了,个人刚刚接触.(初级菜鸟,懂的不多,往大神们指点)需求是,客户点 ...

  5. asp.net mvc添加多条数据到数据库

    mvc的视图太强大了,个人刚刚接触.(初级菜鸟,懂的不多,往大神们指点)需求是,客户点击添加按钮弹出一个框选择产品后直接添加到表单中,在表单可以自己更改产品的数量,以及一些信息.mvc表单提交的时候只 ...

  6. MySQL 快速添加百万条数据

    需要向数据库添加100W条测试数据,直接在普通表中添加速度太慢,可以使用内存表添加,然后将内存表数据复制到普通表 创建表 # 内存表 DROP TABLE IF EXISTS `test_memory ...

  7. JS 通过点击事件动态添加文本框

    直接拷贝到浏览器就能实现 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <htm ...

  8. ThinkPHP框架 【 AJAX方法返回 】 例子:简单添加一条数据 和 查询一个表里的数据

    注:thinkphp使用ajax和之前使用ajax的方法一样,不同点在于之前的ajax中的url指向了一个页面,而thinkphp里面的url需要指向一个操作方法. 在模块控制器Controller文 ...

  9. 利用bulk添加百万条数据,进行测试

    (1)连接数据库 public static void BulkToDB(DataTable dt) { //数据库连接 SqlConnection sqlCon = new SqlConnectio ...

随机推荐

  1. ProtoBuf练习

    环境设置 项目地址 https://github.com/silvermagic/ProtoBufDev.git 操作系统 64位 Fedora 24 安装protobuf $ git clone h ...

  2. Linux命令使用

    命令行创建设置用户密码 $ sudo useradd -m -r username $ cat "username:password" | sudo chpasswd -m 查询u ...

  3. 2018杭电多校第六场1009(DFS,思维)

    #include<bits/stdc++.h>using namespace std;int a[100010];char s[20];int zhiren[100010];vector& ...

  4. 【NOIP模拟赛】收银员(一道差分约束好题)

    /* s[]表示最优方案的序列中的前缀和,那么s[23]就是最优方案 由题意我们可以列出这样一些式子: s[i]+s[23]-s[16+i]>=a[i] (i-8<0) s[i]-s[i- ...

  5. [Xcode 实际操作]四、常用控件-(18)MKMapView地图,将地理坐标转换为实际地名

    目录:[Swift]Xcode实际操作 本文将演示将地理坐标转换为实际地名. 在项目导航区,打开视图控制器的代码文件[ViewController.swift] import UIKit //首先往视 ...

  6. MCP|LQD|Data-independent acquisition improves quantitative cross-linking mass spectrometry (DIA方法可提升交联质谱定量分析)

    文献名:Data-independent acquisition improves quantitative cross-linking mass spectrometry (DIA方法可提升定量交联 ...

  7. [转]SAP一句话入门SD模块

    SD是Sales and Distribution的简称.在SAP系统中,销售与分销模块处在供应链下游,关注从客户订单到向客户收款的全过程. SD模块中的Sales好理解,而Distribution却 ...

  8. 原生 Ajax 封装 和 Axios 二次 封装

    AJAX 异步的JavaScript与XML技术( Asynchronous JavaScript and XML ) Ajax 不需要任何浏览器插件,能在不更新整个页面的前提下维护数据,但需要用户允 ...

  9. [题解](排列组合)luogu_P3223排队

    把老师和女生插到男生中间,先对男生排列:A(n,n),然后把老师插到n+1个空里:A(n+1,2),然后放入女生:A(n+3,m) 但是少考虑了老师之间由1个女生分开的情况,所以把三个人看作一个整体, ...

  10. MacOS下,Python2和Python3完美兼容使用(转)

    问题阐述: MacOS默认Python版本是2.7.10,随着Python3的进一步占有市场,Python2.7也将在2020年结束维护,所以在同一台电脑上安装多个Python版本势在必行. 一.py ...