如何在纯javascript中将事件绑定到元素:
这就是JQuery的功能,你如何使用纯javascript实现它?
$('#arrow_left')
.bind('click', {'c_index': c_index - item_limit },
function(e)
{
var r = e.data.c_index;
}
答案 0 :(得分:2)
target.addEventListener(type, listener[, useCapture]);
在IE的情况下(在IE9之前),您将使用attachEvent。
bSuccess = object.attachEvent(the_event, function_handler)
//the_event always starts with "on"
像这样:
<input id="btn" type="button" value="click me" />
JS:
function click_handler()
{
alert("clicked");
}
var el = document.getElementById("btn");
if(el.addEventListener)//check if this exists
{
el.addEventListener("click", click_handler);
} else {
//then we're on IE older than 9
el.attachEvent("onclick",click_handler);
}
答案 1 :(得分:2)
elem.addEventListener(eventType,
handler,
useCapture);
对于IE6,7,8:
elem.attachEvent (event,
handler);
这是老式的方式,但无论如何你都在使用jQuery,为什么要改变呢?
答案 2 :(得分:1)
对于非IE 你给它三个参数:事件类型,要执行的函数和一个布尔值(true或false),指示事件处理程序是应该在捕获阶段还是在冒泡阶段执行。如果您不确定是否要捕获或冒泡,请使用false。
element.addEventListener('click',doSomething,false)
//In IE
element.attachEvent('onclick',doSomething)