Javascript将addEventListener转换为attachEvent

Javascript将addEventListener转换为attachEvent,javascript,attachevent,Javascript,Attachevent,我有以下代码以一种良好的标准complient方式调用Javascript函数:)。请注意,我必须将elementsList[I]发送到函数(this关键字将不会是足够的),因为事件侦听器正在连接到它的侄子(因为缺少更好的术语) 这段相当混乱的代码将有效地在elementsList[i]中找到当前节点动态行为的控制元素,并向其添加一个点击事件监听器。激发时,它将单击的节点传递给切换函数 elementsList[i].previousSibling.lastChild.addEventListe

我有以下代码以一种良好的标准complient方式调用Javascript函数:)。请注意,我必须将
elementsList[I]
发送到函数(this关键字将不会是足够的),因为事件侦听器正在连接到它的侄子(因为缺少更好的术语)

这段相当混乱的代码将有效地在elementsList[i]中找到当前节点动态行为的控制元素,并向其添加一个点击事件监听器。激发时,它将单击的节点传递给切换函数

elementsList[i].previousSibling.lastChild.addEventListener
("click", (function(el){return function(){toggle(el)};})(elementsList[i]),false); 
问题是,IE8及以下版本根本不起作用,尽管我花了一上午的大部分时间试图找到一份工作,但我就是无法让它发挥作用。如果有人知道如何将其翻译成IE crapo代码,我将不胜感激。

你试过了吗

elementsList[i].previousSibling.lastChild.attachEvent
("onclick", (function(el){return function(){toggle(el)};})(elementsList[i]),false);

2可能的建议

1.)包含在项目中并使用其x-browser事件绑定(或其他库)


2.)不建议这样做,使用您自己的x-browser事件绑定

这是如何工作的??????我已经试了几个小时类似的变化。我肯定我已经试过了!attachEvent接受两个参数:事件名称和函数,因此“false”是不必要的
el
是否实际引用IE中单击的元素尝试查找处理程序中需要哪些参数的规范。我以为你需要<代码>函数(事件){var el=event.srcement;…attaching:event-object:正如我在前面的问题中已经评论过的,您应该阅读