两个比较有用的Javascript工具函数代码


Posted in Javascript onFebruary 17, 2010

1.大家在实际工作中,会写各式各样的赋值语句。
比如最常用的obj.style.display = "none";
如果这样的赋值语句一多,obj.style一排下来都要看晕了

下面我的base.js中的extend函数可以允许用json格式赋值属性甚至是函数句柄

/** 
* 扩展函数 
* @param target 需要扩展的对象 
* @param params 要往target里放的属性和方法 
*/ 
function extend(target, params) { 
    if (!target) { 
        target = {}; 
    } 
    for (var prop in params) { 
        target[prop] = params[prop]; 
    } 
    return target; 
}

2. 由于ie不完全遵守w3c标准,他的事件模型和别的浏览器不一样。调用的方法也不一样。
如果遇到要为控件动态增加事件。用onclick = function() {}一类的在dom动态创建的时候不一定有效,而且无法绑定多个句柄。下面介绍一个通用的支持全浏览器的绑定事件函数。
在大部分情况下,useCapture用的是false,所以这里干脆写死。
/** 
* 动态创建事件句柄 
* @param control 需要扩展的对象 
* @param eventName 事件名 
* @param fn 函数句柄 
*/ 
function addEventListener(control, eventName, fn) {     if (window.attachEvent) { 
        control.attachEvent('on' + eventName, fn); 
    } else { 
        control.addEventListener(eventName, fn, false); 
    } 
}

以上两个函数的使用Sample可以参照我写的其他的文章中的代码
Javascript 相关文章推荐
JQuery Dialog的内存泄露问题解决方法
Jun 18 Javascript
js实现单一html页面两套css切换代码
Apr 11 Javascript
当json键为数字时的取值方法解析
Nov 15 Javascript
jQuery筛选数组之grep、each、inArray、map的用法及遍历json对象
Jun 20 Javascript
jQuery基本选择器和层次选择器学习使用
Feb 27 Javascript
Vue实现动态显示textarea剩余字数
May 22 Javascript
iview中Select 选择器多选校验方法
Mar 15 Javascript
为什么使用koa2搭建微信第三方公众平台的原因
May 16 Javascript
vue配置font-awesome5的方法步骤
Jan 27 Javascript
浅谈vue.use()方法从源码到使用
May 12 Javascript
vue.js中ref及$refs的使用方法解析
Oct 08 Javascript
基于Vue 撸一个指令实现拖拽功能
Oct 09 Javascript
类似GMAIL的Ajax信息反馈显示
Feb 16 #Javascript
JavaScript 10件让人费解的事情
Feb 15 #Javascript
JQuery 动画卷页 返回顶部 动画特效(兼容Chrome)
Feb 15 #Javascript
jQuery 处理表单元素的代码
Feb 15 #Javascript
jQuery 树形结构的选择器
Feb 15 #Javascript
jQuery 处理网页内容的实现代码
Feb 15 #Javascript
JS getMonth()日期函数的值域是0-11
Feb 15 #Javascript
You might like
全国FM电台频率大全 - 15 山东省
2020/03/11 无线电
PHP7.0版本备注
2015/07/23 PHP
php session的锁和并发
2016/01/22 PHP
php抽奖概率算法(刮刮卡,大转盘)
2020/04/17 PHP
PHP使用观察者模式处理异常信息的方法详解
2019/09/24 PHP
jquery 获取自定义属性(attr和prop)的实现代码
2012/06/27 Javascript
在JavaScript里嵌入大量字符串常量的实现方法
2013/07/07 Javascript
浏览器图片选择预览、旋转、批量上传的JS代码实现
2013/12/04 Javascript
javascript实现十六进制颜色值(HEX)和RGB格式相互转换
2014/06/20 Javascript
javascript将异步校验表单改写为同步表单
2015/01/27 Javascript
jQuery简单实现隐藏以及显示特效
2015/02/26 Javascript
jQuery实现仿微软首页感应鼠标变化滑动窗口效果
2015/10/08 Javascript
利用bootstrapValidator验证UEditor
2016/09/14 Javascript
bootstrap导航、选项卡实现代码
2016/12/28 Javascript
微信小程序 switch组件详解及简单实例
2017/01/10 Javascript
利用ES6语法重构React组件详解
2017/03/02 Javascript
解决Node.js使用MySQL出现connect ECONNREFUSED 127.0.0.1:3306的问题
2017/03/09 Javascript
js实现图片轮播效果学习笔记
2017/07/26 Javascript
利用yarn代替npm管理前端项目模块依赖的方法详解
2017/09/04 Javascript
Vue实现点击当前元素以外的地方隐藏当前元素(实现思路)
2019/12/04 Javascript
[03:13]DOTA2-DPC中国联赛1月25日Recap集锦
2021/03/11 DOTA
python获取Linux下文件版本信息、公司名和产品名的方法
2014/10/05 Python
python占位符输入方式实例
2019/05/27 Python
Python实现个人微信号自动监控告警的示例
2019/07/03 Python
Pytorch模型迁移和迁移学习,导入部分模型参数的操作
2021/03/03 Python
html5小技巧之通过document.head获取head元素
2014/06/04 HTML / CSS
HTML5 manifest离线缓存的示例代码
2018/08/08 HTML / CSS
美国领先的汽车轮胎和轮毂供应商:TireBuyer
2016/07/21 全球购物
送给程序员的20个Java集合面试问题
2014/08/06 面试题
如何写一封打动人心的求职信
2014/02/17 职场文书
小学三八妇女节活动方案
2014/03/16 职场文书
社区党的群众路线教育实践活动剖析材料
2014/10/09 职场文书
公安领导班子四风问题个人整改措施思想汇报
2014/10/09 职场文书
慰问信格式
2015/02/14 职场文书
稽核岗位职责范本
2015/04/13 职场文书
Jackson 反序列化时实现大小写不敏感设置
2021/06/29 Java/Android