两个比较有用的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 相关文章推荐
js类后台管理菜单类-MenuSwitch
Sep 12 Javascript
基于PHP+Jquery制作的可编辑的表格的代码
Apr 10 Javascript
jQuery中选择器小问题(新人难免遇到)
Mar 31 Javascript
了不起的node.js读书笔记之node的学习总结
Dec 22 Javascript
thinkphp标签实现bootsrtap轮播carousel实例代码
Feb 19 Javascript
PHP实现本地图片上传和验证功能
Feb 27 Javascript
微信小程序“摇一摇”的实例代码
Jul 20 Javascript
浅析webpack 如何优雅的使用tree-shaking(摇树优化)
Aug 16 Javascript
vue-cli 引入jQuery,Bootstrap,popper的方法
Sep 03 jQuery
利用Dectorator分模块存储Vuex状态的实现
Feb 05 Javascript
layui-table获得当前行的上/下一行数据的例子
Sep 24 Javascript
详细分析JavaScript中的深浅拷贝
Sep 17 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
PHP,ASP.JAVA,JAVA代码格式化工具整理
2010/06/15 PHP
php删除字符串末尾子字符,删除开始字符,删除两端字符(实现代码)
2013/06/27 PHP
PHP 线程安全与非线程安全版本的区别深入解析
2013/08/06 PHP
win7 64位系统 配置php最新版开发环境(php+Apache+mysql)
2014/08/15 PHP
php实现屏蔽掉黑帽SEO的搜索关键字
2015/04/15 PHP
详解thinkphp实现excel数据的导入导出(附完整案例)
2016/12/29 PHP
php实现微信原生支付(扫码支付)功能
2018/05/30 PHP
PHP实现的curl批量请求操作示例
2018/06/06 PHP
Prototype Function对象 学习
2009/07/12 Javascript
你必须知道的JavaScript 中字符串连接的性能的一些问题
2013/05/07 Javascript
iframe窗口高度自适应的实现方法
2014/01/08 Javascript
ClearTimeout消除闪动实例代码
2016/02/29 Javascript
js简单实现调整网页字体大小的方法
2016/07/23 Javascript
实现点击下箭头变上箭头来回切换的两种方法【推荐】
2016/12/14 Javascript
Vue 2.0+Vue-router构建一个简单的单页应用(附源码)
2017/03/14 Javascript
详解从vue-loader源码分析CSS Scoped的实现
2019/09/23 Javascript
[36:20]完美世界DOTA2联赛PWL S3 access vs Rebirth 第一场 12.17
2020/12/18 DOTA
Python定时执行之Timer用法示例
2015/05/27 Python
Python基于whois模块简单识别网站域名及所有者的方法
2018/04/23 Python
Tensorflow实现卷积神经网络的详细代码
2018/05/24 Python
Python3enumrate和range对比及示例详解
2019/07/13 Python
python实现字符串完美拆分split()的方法
2019/07/16 Python
Html5 Canvas 实现一个“刮刮乐”游戏
2019/09/05 HTML / CSS
日本快乐生活方式购物网站:Shop Japan
2018/07/17 全球购物
Proenza Schouler官方网站:纽约女装和配饰品牌
2019/01/03 全球购物
什么叫做SQL注入,如何防止
2016/10/04 面试题
会计岗位职责范本
2014/03/07 职场文书
女生节标语
2014/06/26 职场文书
农村党支部书记党群众路线四风问题整改措施
2014/09/26 职场文书
办护照工作证明
2014/10/01 职场文书
交通事故委托书范本精选
2014/10/04 职场文书
工作收入住址证明
2014/10/28 职场文书
2015年端午节活动总结
2015/02/11 职场文书
公司停电通知
2015/04/15 职场文书
CentOS7和8下安装Maven3.8.4
2022/04/07 Servers
vue如何在data中引入图片的正确路径
2022/06/05 Vue.js