`
tsailer
  • 浏览: 53038 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类

JS中的attachEvent、addEventListener如何传递参数

    博客分类:
  • JS
阅读更多
<!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>


转自
http://blog.csdn.net/avon520/archive/2008/10/06/3022363.aspx
分享到:
评论

相关推荐

    attachEvent和addEventListener 使用方法

    在JavaScript中,`attachEvent` 和 `addEventListener` 是两种用于为元素添加事件处理程序的方法,主要在Internet Explorer和非IE浏览器(遵循W3C标准)中使用。它们都是用来监听和响应用户或浏览器的特定行为,如...

    javascript attachEvent和addEventListener使用方法

    本知识点将介绍 JavaScript 中两种常用的方法:attachEvent 和 addEventListener,以及它们在不同浏览器中的应用和区别。 首先,attachEvent 方法是早期 Internet Explorer 浏览器引入的事件监听方法,它的语法是:...

    Javascript attachEvent传递参数的办法

    在探讨Javascript中使用attachEvent方法传递参数的问题时,首先需要理解attachEvent和addEventListener之间的区别,以及它们在IE浏览器中的实现差异。attachEvent是IE 8及以下版本独有的事件绑定方法,而...

    关于javaScript注册click大事传递参数的不胜利问题_.docx

    在描述的问题中,开发者遇到了在`click`事件处理函数中传递多个参数的困扰。例如,尝试在`addEventListener`或`attachEvent`中直接传递参数的方式都是无效的,因为它们只会接收一个函数作为参数,而不会自动包含传递...

    JS在IE和FF下attachEvent,addEventListener学习笔记

    ### JavaScript中的事件处理:attachEvent与addEventListener #### 一、引言 JavaScript 是一种广泛使用的脚本语言,它被用于实现网页的动态效果和交互功能。随着 Web 技术的发展,浏览器之间的差异也逐渐显现出来...

    JavaScript通过attachEvent和detachEvent方法处理带参数的函数

    在探讨JavaScript中使用attachEvent和detachEvent方法处理带有参数的函数之前,我们先要了解这两个方法分别是什么以及它们的作用。attachEvent和detachEvent是早期IE浏览器特有的,用于为DOM元素添加或移除事件监听...

    attachEvent的使用方法与传递参数[IE|firefox]|angluo-javascript-37392.pdf

    在描述中的代码示例中,使用了闭包来解决`attachEvent`传递参数的问题。这里有两个版本的代码: 第一个版本中,`str`变量定义在立即执行的函数表达式(IIFE)内部,确保了其作用域的限制。在事件处理函数`func`中,...

    浅谈addEventListener和attachEvent的区别

    在JavaScript中,处理DOM事件监听有两个主要的方法:`addEventListener` 和 `attachEvent`。这两个方法在功能上相似,但存在一些关键的区别,特别是在浏览器兼容性和事件处理方式上。 `addEventListener` 是W3C标准...

    window.addEventListener来解决让一个js事件执行多个函数

    可能你也碰到过这种情况,就是在js的代码中用了[removed]后,可能会影响到body中的onload事件。你可以全写在body中,也可以全放到[removed]中,但是这样并不是很方便,有时我们需要两个同时用到。这时就要用window....

    javascript中attachEvent用法实例分析

    在这个通用函数中,首先检查浏览器是否支持`addEventListener`,如果支持就使用它,否则回退到`attachEvent`。这样,无论在哪种浏览器中,我们都可以统一地添加事件处理函数。 总之,`attachEvent`是IE浏览器特有的...

    Js on及addEventListener原理用法区别解析

    JavaScript中的事件处理方式有两种主要的形式:`on`属性和`addEventListener`方法。这两种方式在处理事件时有着不同的特性和用法,理解它们的区别和应用场景对于编写高效、可维护的JavaScript代码至关重要。 首先,...

    window.open()实现post传递参数

    2. 创建隐藏的`&lt;input&gt;`元素,类型设为`"hidden"`,并将需要传递的参数放入这些输入字段中,例如`&lt;input type="hidden" name="param1" value="value1"&gt;`。 3. 将这个动态创建的表单添加到文档的`&lt;body&gt;`中,以便它能...

    关于javaScript注册click事件传递参数的不成功问题

    在JavaScript中,为HTML元素注册click事件处理函数并传递参数时,可能遇到的一个典型问题是参数无法正确传递给事件处理函数。这通常发生在尝试直接将函数调用作为事件监听器注册时,如下面的错误用法: ```...

    self.attachevent is not a function的解决方法

    但是要注意,`addEventListener`有第三个参数用于指定事件处理函数的执行顺序(默认为false,即事件冒泡阶段),而`attachEvent`没有这个参数,所以通常在使用`attachEvent`时不需要传递额外的参数。 尽管`onclick`...

    addEventListener 的用法示例介绍

    `addEventListener` 是JavaScript中用于添加事件监听器的方法,它允许我们为同一个元素绑定多个事件处理函数,这对于构建复杂的交互式网页非常有用。在不同的浏览器环境中,`addEventListener` 的使用略有差异,尤其...

    探究JavaScript中的五种事件处理程序方式

    需要注意的是,`attachEvent`不会自动传递事件对象,需要手动传递。 5. 跨浏览器的事件处理程序 为了兼容各种浏览器,通常需要编写跨浏览器的事件处理程序,结合DOM2级和IE的方法。 ```javascript function ...

    这段js代码得节约你多少时间.docx

    对于不支持`addEventListener`的环境,它使用`attachEvent`,同样利用`bind`传递参数。这里的差异在于`attachEvent`不直接支持`bind`,因此需要稍加调整。 接下来,我们看到`move`方法的实现。`move`方法使用`...

Global site tag (gtag.js) - Google Analytics