<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>Untitled Page</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<a href="#" id="link1" aaa="a">超链接link1</a>
<a href="#" id="link2" aaa="b">超链接link2</a>
<input type="button" value="attachEvent" onclick="addEvent();" />
</div>
</form>
</body>
</html>
<script type="text/javascript">
function AttachEvent(target, eventName, handler, argsObject)
{
var eventHandler = handler;
if(argsObject)
{
eventHander = function(e)
{
handler.call(argsObject, e);
}
}
if(window.attachEvent)//IE
target.attachEvent("on" + eventName, eventHander );
else//FF
target.addEventListener(eventName, eventHander, false);
}
function LinkClick(e)
{
alert(this.name);
// var target = e.srcElement || e.target;
// alert(target.getAttribute('aaa'));
}
function addEvent()
{
var obj = new Object();
obj.name = "link1111";
var link1 = document.getElementById("link1");
AttachEvent(link1, "click", LinkClick, obj);
obj = new Object();
obj.name = "link2222";
var link2 = document.getElementById("link2");
AttachEvent(link2, "click", LinkClick, obj);
}
</script>
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/jiang_jiajia10/archive/2008/11/25/3361478.aspx
分享到:
相关推荐
在JavaScript中,`attachEvent` 和 `addEventListener` 是两种用于为元素添加事件处理程序的方法,主要在Internet Explorer和非IE浏览器(遵循W3C标准)中使用。它们都是用来监听和响应用户或浏览器的特定行为,如...
本知识点将介绍 JavaScript 中两种常用的方法:attachEvent 和 addEventListener,以及它们在不同浏览器中的应用和区别。 首先,attachEvent 方法是早期 Internet Explorer 浏览器引入的事件监听方法,它的语法是:...
在探讨Javascript中使用attachEvent方法传递参数的问题时,首先需要理解attachEvent和addEventListener之间的区别,以及它们在IE浏览器中的实现差异。attachEvent是IE 8及以下版本独有的事件绑定方法,而...
在描述的问题中,开发者遇到了在`click`事件处理函数中传递多个参数的困扰。例如,尝试在`addEventListener`或`attachEvent`中直接传递参数的方式都是无效的,因为它们只会接收一个函数作为参数,而不会自动包含传递...
### JavaScript中的事件处理:attachEvent与addEventListener #### 一、引言 JavaScript 是一种广泛使用的脚本语言,它被用于实现网页的动态效果和交互功能。随着 Web 技术的发展,浏览器之间的差异也逐渐显现出来...
在探讨JavaScript中使用attachEvent和detachEvent方法处理带有参数的函数之前,我们先要了解这两个方法分别是什么以及它们的作用。attachEvent和detachEvent是早期IE浏览器特有的,用于为DOM元素添加或移除事件监听...
在描述中的代码示例中,使用了闭包来解决`attachEvent`传递参数的问题。这里有两个版本的代码: 第一个版本中,`str`变量定义在立即执行的函数表达式(IIFE)内部,确保了其作用域的限制。在事件处理函数`func`中,...
在JavaScript中,处理DOM事件监听有两个主要的方法:`addEventListener` 和 `attachEvent`。这两个方法在功能上相似,但存在一些关键的区别,特别是在浏览器兼容性和事件处理方式上。 `addEventListener` 是W3C标准...
可能你也碰到过这种情况,就是在js的代码中用了[removed]后,可能会影响到body中的onload事件。你可以全写在body中,也可以全放到[removed]中,但是这样并不是很方便,有时我们需要两个同时用到。这时就要用window....
在这个通用函数中,首先检查浏览器是否支持`addEventListener`,如果支持就使用它,否则回退到`attachEvent`。这样,无论在哪种浏览器中,我们都可以统一地添加事件处理函数。 总之,`attachEvent`是IE浏览器特有的...
JavaScript中的事件处理方式有两种主要的形式:`on`属性和`addEventListener`方法。这两种方式在处理事件时有着不同的特性和用法,理解它们的区别和应用场景对于编写高效、可维护的JavaScript代码至关重要。 首先,...
2. 创建隐藏的`<input>`元素,类型设为`"hidden"`,并将需要传递的参数放入这些输入字段中,例如`<input type="hidden" name="param1" value="value1">`。 3. 将这个动态创建的表单添加到文档的`<body>`中,以便它能...
在JavaScript中,为HTML元素注册click事件处理函数并传递参数时,可能遇到的一个典型问题是参数无法正确传递给事件处理函数。这通常发生在尝试直接将函数调用作为事件监听器注册时,如下面的错误用法: ```...
但是要注意,`addEventListener`有第三个参数用于指定事件处理函数的执行顺序(默认为false,即事件冒泡阶段),而`attachEvent`没有这个参数,所以通常在使用`attachEvent`时不需要传递额外的参数。 尽管`onclick`...
`addEventListener` 是JavaScript中用于添加事件监听器的方法,它允许我们为同一个元素绑定多个事件处理函数,这对于构建复杂的交互式网页非常有用。在不同的浏览器环境中,`addEventListener` 的使用略有差异,尤其...
需要注意的是,`attachEvent`不会自动传递事件对象,需要手动传递。 5. 跨浏览器的事件处理程序 为了兼容各种浏览器,通常需要编写跨浏览器的事件处理程序,结合DOM2级和IE的方法。 ```javascript function ...
对于不支持`addEventListener`的环境,它使用`attachEvent`,同样利用`bind`传递参数。这里的差异在于`attachEvent`不直接支持`bind`,因此需要稍加调整。 接下来,我们看到`move`方法的实现。`move`方法使用`...