代码拉取完成,页面将自动刷新
/**
* 延时调用函数插件
*
* http://
*
* Released under the MIT license
*
* Creator: yzChen
* Date: 2016-9-19
*/
+(function($) {
// 判断是否是 jquery / zepto 插件
if (!$) {
throw new Error('jQuery or Zepto not found!');
}
// 延时调用函数定义
$.fn.delaycall = function (options) {
// 可配参数定义
var settings = $.extend({
'func': null, // 函数名称
'times': 1000, // 延迟时间,单位:毫秒
'beforeCallClear': true, // 未执行func前,绑定事件被触发,是否清理之前定义的定时器
'event': 'blur', // 触发事件,默认是离开焦点时触发,依据jquery/zepto语法,如 keydown ...
'justNormalKeyCode': true // event -> keydown 时,是否只支持普通按键:英文、数字
}, options);
// 调用函数未定义
if(!settings.func) {
throw new Error('delaycall options func not found!');
}
// 定时器变量
var ___sto;
// 绑定事件
$(this).bind(settings.event, function (event) {
// 按键事件,判断是否只支持普通按键
if('keydown' == settings.event && true === settings.justNormalKeyCode) {
var ___ekc = event.keyCode;
if(!((___ekc >= 48 && ___ekc <= 57) || (___ekc >= 65 && ___ekc <= 90) || (___ekc >= 96 && ___ekc <= 105))) {
return;
}
}
// 定时器清理
if(true === settings.beforeCallClear) {
clearTimeout(___sto);
}
// 延迟指定秒数后,调用函数
___sto = setTimeout(settings.func, settings.times);
});
}
})(window.jQuery || window.Zepto);
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。