两个比较有用的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 相关文章推荐
兼容多浏览器的iframe自适应高度(ie8 、谷歌浏览器4.0和 firefox3.5.3)
Nov 04 Javascript
Jquery时间验证和转换工具小例子
Jul 01 Javascript
javascript实现禁止右键和F12查看源代码
Dec 26 Javascript
javascript实现九宫格相加数值相等
May 28 Javascript
jquery实现右侧栏菜单选择操作
Mar 04 Javascript
Web前端开发工具——bower依赖包管理工具
Mar 29 Javascript
基于vue实现swipe轮播组件实例代码
May 24 Javascript
JS+Ajax实现百度智能搜索框
Aug 04 Javascript
JavaScript中使用Async实现异步控制
Aug 15 Javascript
vue.js  父向子组件传参的实例代码
Oct 29 Javascript
使用JavaScript获取扫码枪扫描得到的条形码的思路代码详解
Jun 10 Javascript
解决vue组件销毁之后计时器继续执行的问题
Jul 21 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制作静态网站的模板框架(一)
2006/10/09 PHP
PHP删除特定数组内容并且重建数组索引的方法.
2011/03/25 PHP
第4章 数据处理-php数组的处理-郑阿奇
2011/07/04 PHP
PHP动态规划解决0-1背包问题实例分析
2015/03/23 PHP
PHP + plupload.js实现多图上传并显示进度条加删除实例代码
2017/03/06 PHP
ThinkPHP5.0框架控制器继承基类和自定义类示例
2018/05/25 PHP
ASP中用Join和Array,可以加快字符连接速度的代码
2007/08/22 Javascript
浅谈javascript六种数据类型以及特殊注意点
2013/12/20 Javascript
JS过滤url参数特殊字符的实现方法
2013/12/24 Javascript
jquery实现网页查找功能示例分享
2014/02/12 Javascript
将HTML格式的String转化为HTMLElement的实现方法
2014/08/07 Javascript
js+jquery实现图片裁剪功能
2015/01/02 Javascript
jQuery实现获取绑定自定义事件元素的方法
2015/12/02 Javascript
js为什么不能正确处理小数运算?
2015/12/29 Javascript
基于nodejs+express4.X实现文件下载的实例代码
2017/07/13 NodeJs
Vue框架中正确引入JS库的方法介绍
2017/07/30 Javascript
javascript 产生随机数的几种方法总结
2017/09/26 Javascript
JS实现的集合去重,交集,并集,差集功能示例
2018/03/13 Javascript
浅谈vue首屏加载优化
2018/06/28 Javascript
Vue基础配置讲解
2019/11/29 Javascript
Vue环境搭建+VSCode+Win10的详细教程
2020/08/19 Javascript
three.js显示中文字体与tween应用详析
2021/01/04 Javascript
[01:20:05]DOTA2-DPC中国联赛 正赛 Ehome vs VG BO3 第二场 2月5日
2021/03/11 DOTA
Python httplib,smtplib使用方法
2008/09/06 Python
python读取浮点数和读取文本文件示例
2014/05/06 Python
详解Python中的文件操作
2016/08/28 Python
基于Python数据可视化利器Matplotlib,绘图入门篇,Pyplot详解
2017/10/13 Python
Python+Tensorflow+CNN实现车牌识别的示例代码
2019/10/11 Python
Python input函数使用实例解析
2019/11/22 Python
TensorFlow tf.nn.conv2d_transpose是怎样实现反卷积的
2020/04/20 Python
VSCode中autopep8无法运行问题解决方案(提示Error: Command failed,usage)
2021/03/02 Python
中国最大的潮流商品购物网站:YOHO!BUY有货
2017/01/07 全球购物
小米乌克兰网上商店:Xiaomi.UA
2019/10/29 全球购物
企业管理专业个人求职信范文
2013/09/24 职场文书
工程监理应届生求职信
2013/11/09 职场文书
python中使用redis用法详解
2022/12/24 Redis