两个比较有用的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 相关文章推荐
juqery 学习之三 选择器 可见性 元素属性
Nov 25 Javascript
单击按钮显示隐藏子菜单经典案例
Jan 04 Javascript
javascript图像处理—仿射变换深度理解
Jan 16 Javascript
js 程序执行与顺序实现详解
May 13 Javascript
js 判断图片是否加载完以及实现图片的预下载
Aug 14 Javascript
Javascript中的几种URL编码方法比较
Jan 23 Javascript
JS实现黑色大气的二级导航菜单效果
Sep 18 Javascript
纯js实现隔行变色效果
Nov 29 Javascript
jquery动态添加以及遍历option并获取特定样式名称的option方法
Jan 29 jQuery
JS实现滚动条触底加载更多
Sep 19 Javascript
微信小程序swiper组件实现抖音翻页切换视频功能的实例代码
Jun 24 Javascript
在webstorm中配置less的方法详解
Sep 25 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时间不正确的解决方法
2008/04/09 PHP
PHP 获取客户端真实IP地址多种方法小结
2010/05/15 PHP
php除数取整示例
2014/04/24 PHP
php常用字符串比较函数实例汇总
2014/11/24 PHP
PHP控制前台弹出对话框的实现方法
2016/08/21 PHP
PHP封装的多文件上传类实例与用法详解
2017/02/07 PHP
经常用到的JavasScript事件的翻译
2007/04/09 Javascript
js过滤HTML标签以及空格的思路及代码
2013/05/24 Javascript
javascript中创建对象的几种方法总结
2013/11/01 Javascript
JS中判断null、undefined与NaN的方法
2014/03/24 Javascript
JavaScript实现继承的4种方法总结
2014/10/16 Javascript
AngularJS入门教程引导程序
2016/08/18 Javascript
浅谈JS中的!=、== 、!==、===的用法和区别
2016/09/24 Javascript
微信小程序 登录的简单实现
2017/04/19 Javascript
判断js数据类型的函数实例详解
2019/05/23 Javascript
浅析vue中的nextTick
2020/12/28 Vue.js
Vue 实现可视化拖拽页面编辑器
2021/02/01 Vue.js
Python中使用第三方库xlutils来追加写入Excel文件示例
2015/04/05 Python
Python通过90行代码搭建一个音乐搜索工具
2015/07/29 Python
Python实现将SQLite中的数据直接输出为CVS的方法示例
2017/07/13 Python
python利用lxml读写xml格式的文件
2017/08/10 Python
python实现移位加密和解密
2019/03/22 Python
Appium+python自动化怎么查看程序所占端口号和IP
2019/06/14 Python
pytorch中的上采样以及各种反操作,求逆操作详解
2020/01/03 Python
HTML5 新事件 小结
2009/07/16 HTML / CSS
海滩咖啡馆:Beach Cafe
2018/02/02 全球购物
Lampegiganten丹麦:欧洲领先的照明网上商店
2018/04/25 全球购物
德国价格合理的品牌商品购物网站:averdo
2019/03/21 全球购物
Stührling手表官方网站:男女高品质时尚手表的领先零售商
2021/01/07 全球购物
不假外出检讨书
2014/01/27 职场文书
小班上学期评语
2014/05/05 职场文书
师德先进个人事迹材料
2014/12/19 职场文书
刑事附带民事起诉状
2015/05/19 职场文书
深度学习小工程练习之垃圾分类详解
2021/04/14 Python
如何利用opencv判断两张图片是否相同详解
2021/07/07 Python
linux目录管理方法介绍
2022/06/01 Servers