function 工具集
经常会碰到这样的问题
1. button.click 后,只调用一次方法
2. window.scroll触发太频繁,导致滚动加载次数太多
3. document.keyup次数太多,导致智能提示调用次数太多
你需要以下的方法来解决此类问题
$('a.load').on('click', $.once(function() {
$('#tabs .first').load(url);
}));
$(window).on('scroll', $.throttle(function() {
$('#rest').lazyload();
}));
$(input).on('keyup', $.debounce(function() {
$.suggest($(this).val())
}));
工具集源码如下:
$.bind = function(func, context) {
var args = Array.prototype.slice.call(arguments, 2);
return function() {
return func.apply(context, args);
}
}
//只调用一次
$.once = function(func){
var ran = false;
return function() {
if(ran) return;
ran = true;
func();
}
}
//ms时间内只执行一次
$.throttle = function(func, ms) {
ms = ms || 150;
var last = +new Date();
var timer ;
return function() {
var now = +new Date();
if(now - last > ms) {
timer = null;
last = now;
func();
} else {
timer = setTimeout(func, ms - (now-last));
}
}
}
//缓冲ms时间后才执行
$.debounce = function(func, ms) {
ms = ms || 150;
var timer;
return function() {
clearTimeout(timer);
timer = setTimeout(func, ms);
}
}
- underscore, yui 中有throttle, debounce两个方法, jquery中没有发现
分享到:
相关推荐
定向数据在科学中无处不在。由于其循环性质,此类数据无法使用常用的统计技术进行分析。尽管在过去的50年里,定向统计的专门方法发展迅速...最后,我们分析了一个来自神经生理学的数据集,以展示CircStat工具箱的功能。
打印指令+测试工具.zip
RC 4.0 调试工具 RCK(remote call kernel 缩写)为远程调用内核, 其通讯协议为自定义数据流协议。 RCK 负责远程调用过程中的数据组织, 并不关心实际物理通讯协议, 实则属于逻辑层通讯 协议。 RCK 通讯槽接口...
// define a function to see if list contain a person with given name: def check = $( (List ls, String name) -> null != $(list).forEach(e -> { if (e.name().equals(name)) ...
自定义函数,集160个工具于一身,但体积小于15MB。当安装集成工具箱后,如果您使用Excel 2003,则将产生【工具箱】菜单, 包括160多个子菜单;如果您使用Excel 2007或者2010,将产生【集成】与【工具箱】功能区。...
matlab\general - General ...matlab\funfun - Function functions and ODE solvers. matlab\sparfun - Sparse matrices. matlab\scribe - Annotation and Plot Editing. matlab\graph2d - Two dimensional graphs.
(如果是英⽂版,错误应该是Attempt to execute SCRIPT robot as a function: G:\MATLAB2012\toolbox\robot-9.8\rvctools\robot\demos\robot.m) 错误原因 MATLAB运⾏⽬录下有个同名的 robot.m⽂件,它与此函数冲突...
句法spdx工具的命令行界面可以这样使用: java -jar spdx-tools-jar-with-dependencies.jar <function> <parameters>SPDX格式转换器spdx工具提供了以下转换器工具: TagToSpreadsheet TagToRDF RdfToTag 读音...
loss_function.py 损失函数 (loss function) detection.py 检测结果的处理代码,将 SSD 返回结果处理为 opencv 可以处理的形式 eval.py 评估网络性能代码 test.py 单张图片测试代码 Ps:没写参数接口,所以要改测试的...
自定义函数,集160个工具于一身,但体积小于16MB。当安装集成工具箱后,如果您使用Excel 2003,则将产生【工具箱】菜单, 包括160多个子菜单;如果您使用Excel 2007或者2010,将产生【集成】与【工具箱】功能区。...
loss_function.py 损失函数 (loss function) detection.py 检测结果的处理代码,将 SSD 返回结果处理为 opencv 可以处理的形式 eval.py 评估网络性能代码 test.py 单张图片测试代码 Ps:没写参数接口,所以要改测试的...
GDScript工具包 该项目为GDScript日常工作提供了一组工具。 目前,它提供: ... misc/MarkovianPCG.gd:96: Error: Function argument name "aOrigin" is not valid (function-argument-name) misc/Markovia
Matlab工具集的集合,包括: mex自动编译: 方便的助手:,,,,,,,,,... OpenEXR读写器,基于tinyexr.h,支持多通道(例如,光谱)图像,即仅标头编译: exr_read() , exr_write() , exr_query() 可嵌入的...
Pepo 是一个非常简单的工具,可以帮助缓解这种情况。 它从标准输入中读取并进行一些有用的转换: 删除 CSI 代码。 提取片段并且可选地将它们包装在 module.exports = function () {...}; 中。 这样你只需要将它们...
25.属性表中选择集与非选择集的切换 Options/switch selection 26.快速把选择的要素另存为一个图层并加载进来。 先选责需要另存图层的要素(直接选择或者属性表),然后在图层上右键Selection/create Layer From ...
第21集:图形工具的使用;介绍Tools工具栏、Graph工具栏、Mask工具栏和Object Edit工具栏的使用方法 第22集:主题绘图与模板绘图;介绍主题绘图与模板绘图的操作方法 第23集:Excel窗口绘图;介绍在Excel窗口中绘制...
粒子群工具箱 - Particle Swarm (PSO) Toolbox-beta-0.3 粒子群算法matlab源程序function.docx 粒子群算法的源代码 粒子群算法简介.ppt 蚁群算法.ppt 蚁群算法.rar 蚁群算法C程序代码.doc 蚁群算法matlab源码.txt 蚁...
重新同步一个 从属工具箱。 redis-sync实现SYNC命令的复制从属端,并在修改数据集的所有命令SYNC式传输。 它还可以使用解析命令之前的数据集转储。 如果无法连接,断开连接或redis仍在加载数据集,则redis-sync将...
架构用于从Web提取结构化数据的工具集。安装npm i xstruct --save例子从提取评论的示例。 var $ = require ( 'xstruct' ) ;return $ . getHtml ( 'http://dou.ua/forums/topic/14416/' ). then ( function ( html ) ...
loss_function.py 损失函数 (loss function) detection.py 检测结果的处理代码,将 SSD 返回结果处理为 opencv 可以处理的形式 eval.py 评估网络性能代码 test.py 单张图片测试代码 Ps:没写参数接口,所以要改测试的...