[code="html"]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
js的attachEvent传递的参数总是最后一个,求解决办法
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
4条回答
- jinnianshilongnian 2012-09-13 07:10关注
1、var obj=null;
outer:for(var i=0;i<objs.length;i++){
obj=objs[i];
obj.attachEvent("onclick",function (){aaa(obj);});
}}aaa(obj);//obj=objs数组最后一个,所以这样肯定不对;
2、attachEvent不支持Mozilla系列,需要addEventListener
[url]http://www.cnblogs.com/poorpan/archive/2011/08/10/2134039.html[/url]3、我们通过event传递,然后通过如下代码拿到目标对象
var src = event.srcElement;
if(!src) {
src = event.target;
}
[url]http://codex.wordpress.org.cn/HTML%E5%85%B3%E4%BA%8EEvent%E5%AF%B9%E8%B1%A1[/url]4、可执行代码:
About
[code="java"]<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">123明细信息 456明细信息 789明细信息 ss
function initHrefColor(){ var objs=document.getElementsByTagName("a"); var obj=null; outer:for(var i=0;i<objs.length;i++){ obj=objs[i]; //非Mozilla系列 if(obj.attachEvent) { obj.attachEvent("onclick",aaa); } else { obj.addEventListener("click",aaa); } }} function aaa(event){ var src = event.srcElement; if(!src) { src = event.target; } alert(src.innerText); } initHrefColor();
[/code]本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 请问这个是什么意思?
- ¥15 STM32驱动继电器
- ¥15 Windows server update services
- ¥15 关于#c语言#的问题:我现在在做一个墨水屏设计,2.9英寸的小屏怎么换4.2英寸大屏
- ¥15 模糊pid与pid仿真结果几乎一样
- ¥15 java的GUI的运用
- ¥15 我想付费需要AKM公司DSP开发资料及相关开发。
- ¥15 怎么配置广告联盟瀑布流
- ¥15 Rstudio 保存代码闪退
- ¥20 win系统的PYQT程序生成的数据如何放入云服务器阿里云window版?