JS给元素添加事件
来源:互联网 发布:工业用电量数据 指标 编辑:程序博客网 时间:2024/04/29 20:02
给页面的某个元素添加某个事件是前端开发经常遇到的事, 这里就演示利用原始的 JS 动态给页面某个元素添加事件, 兼容MS IE 和 非MSIE 的浏览器情况:
1, JS给元素动态添加事件的通用函数
function attachEvt(evt,refEventName,refObjID,refFunctionName){ //how use: attachEvt(event,'click','objID',functionName) //函数名称不用引号var e=evt||window.event; //事件,待扩展用var evtName=refEventName;//事件名称,如 click, mouseover等,注意没有on var oID=refObjID;//元素的ID号var fn=refFunctionName; //响应的函数名称,响应函数可以另外在外部定义var brsName='ie';//默认为ievar ua=navigator.userAgent.toLowerCase();if(ua.indexOf("msie") >= 0) brsName='ie';elsebrsName='other';/*if(ua.indexOf("msie") != -1) brsName='ie';if(ua.indexOf("gecko") != -1) brsName='gecko';if(ua.indexOf("opera") != -1) brsName='opera';*/var obj=document.getElementById(oID);if("ie"==brsName) //IEobj.attachEvent("on"+evtName,fn);else //not IEobj.addEventListener(evtName,fn,false); //参数为(事件,调用的函数,是否冒泡) }上面函数有些还可以省,仅仅保留作为参考,
2, 函数应用如下:
假设有如下响应函数function funName01(){var obj=document.getElementById("div01");alert(obj.innerHTML);}
<div id="div01" class="div01"> Div01 TEXT... 刚开始没有点击事件,当增加后该div有响应点击事件的函数</div>
<input name="btn01" value="add event[click]" type="button" onClick="javascript:attachEvt(event,'click','div01',funName01);">
MS IE 给元素添加事件使用 JS 函数: attachEvent(), 如: attachEvent("on"+事件名称,响应函数名)
非 MS IE 给元素添加事件使用 JS 函数: addEventListener(), 如: addEventListener(事件名称,响应函数名,false)
- JS给元素添加事件
- js 给dom元素添加事件
- 使用js给元素添加事件
- js 动态给元素添加、移除事件
- JS动态给元素添加事件处理代码
- js给网页中所有p元素添加onclick事件
- JS给元素添加样式
- jQuery 给动态添加元素绑定事件
- 给动态增加的元素添加事件
- 给动态添加的元素绑定事件
- 如何给动态元素添加事件
- JQ给未来元素添加事件
- 原生JS操作网页给p元素添加onclick事件及表格隔行变色
- jquery on() 给js动态新添加的元素 绑定的点击事件。
- JS给元素注册事件的办法
- js 给元素绑定键盘回车事件
- js 给未来元素绑定事件
- 如何给元素添加事件监听和取消事件冒泡
- 增加排名列SQL语句(需排名的列值相等时排名相同)
- 想写的,不想写的
- 导出数据到xml(自动下载)
- linux 常用命令集锦
- iOS-ssh无密码登入设置
- JS给元素添加事件
- 关于WS_CLIPCHILDREN和WS_CLIPSIBLINGS的理解
- [整理]Windows Server 2003 安装多个Tomcat 6.0 服务器
- jBPM4.4:如何图示化显示当前的流程执行到了哪一步骤
- AGG反锯齿绘图库的学习笔记(二)
- regsrv32
- 运用javascript对于前台数据的校验
- UIimage保存为png图片
- 白话SCRUM之五:四种会议