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

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

  时间太仓促了,这几个月,今天算最晚的一次凌晨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. ASP.NET MVC中的 _ViewStart.cshtml文件的作用【摘抄】

    ViewStart 在前面的例子中,每一个视图都是使用Layout 属性来指定它的布局.如果多个视图使用同一个布局,就会产生冗余,并且很难维护. _ViewStart.cshtml 页面可用来消除这种 ...

  2. C++基础之预处理和语句

    (1)C++语言源程序中可以使用一些预处理中的编译命令,这些命令在程序被正常编译之前执行,被称为预处理命令,这些命令所实现的功能被称为预处理功能(2)常用的预处理命令有文件包含命令.宏定义命令和条件编 ...

  3. 786A(博弈&bfs)

    题目链接: http://codeforces.com/problemset/problem/786/A 题意: 一个环形路径编号为1-n,1号点为黑洞,玩家轮流让怪物前进若干步(从自己的操作集合里随 ...

  4. 2017-10-17 NOIP模拟赛

    Reverse #include<iostream> #include<cstdio> #include<cstring> using namespace std; ...

  5. 洛谷P1092 虫食算

    P1092 虫食算 题目描述 所谓虫食算,就是原先的算式中有一部分被虫子啃掉了,需要我们根据剩下的数字来判定被啃掉的字母.来看一个简单的例子: http://paste.ubuntu.com/2544 ...

  6. jQuery点击弹出层,弹出模态框,点击模态框消失

    1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 3 ...

  7. iOS sqlite

    iOS sqlite数据库操作.步骤是: 先加入sqlite开发库libsqlite3.dylib, 新建或打开数据库, 创建数据表, 插入数据, 查询数据并打印 1.新建项目sqliteDemo,添 ...

  8. POJ1044 Date bugs

    题目来源:http://poj.org/problem?id=1044 题目大意: 与众所周知的”千年虫“类似,某些计算机上存在日期记录的bug.它们的时钟有一个年份周期,每当到达最大值时,就会自动跳 ...

  9. Scrapy框架中的Pipeline组件

    简介 在下图中可以看到items.py与pipeline.py,其中items是用来定义抓取内容的实体:pipeline则是用来处理抓取的item的管道 Item管道的主要责任是负责处理有蜘蛛从网页中 ...

  10. 一些有关PyCharm使用总结

    目前在这里,你能看见 license server Python版本配置 添加另外版本的Python 设置字体大小 关于编码 关于模版 安装好之后,第一个问题就是 license server 问题, ...