jquery中有一个方法:one,用途是事件绑定只执行一次就自动解除绑定。源码看了很久头晕,决定自己搞一个。研究了很久,用原生的模拟了一次。我用的名字是once。
最初的方法是这样的:
function once(dom, event, callback) {
// 这一步是为了避免修改形参
var temp = callback;
dom.addEventListener(event, function() {
if(temp)
temp();
temp = null;
})
}
这种方法是可以的,但有个问题,事件处理函数依然存在,只是什么都不执行而已,久而久之会变得十分臃肿。
替代方法变成在处理函数里解除本身,但如果用匿名函数的话,会陷入可怕的无限递归。
一套简单的数据库结构的在线订单系统,采用数据库存储格式,方便的实现产品的在线订购,带有后台管理模块用户名为: admin 密码: ojdj22 修改密码方法如下, 更改 ckpwd.asp 中 第三行 if (user="用户名" and pwd="密码") 即可
0
用变量存储的话就能解决了。
function once(dom, event, callback) {
var handle = function() {
callback();
dom.removeEventListener(event, handle);
}
dom.addEventListener(event, handle)
}闲暇娱乐之作,希望能帮到一些人。
以上就是jquery one函数方法实现的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号