addEventListener中的false是什么('click',stopEvent,false)是什么意思?

时间:2014-02-16 20:50:06

标签: javascript

第三个参数'false'在波纹管代码的最后一行代表什么?

var parent = document.getElementById('parent'),
child  = document.getElementById('child'),
op     = document.getElementById('op'),
op2    = document.getElementById('op2');

parent.addEventListener('click', function () {
  op.innerHTML += '<p>click registered</p>';
}, false);

function stopEvent (e) {
  e.stopPropagation();
  op2.innerHTML += '<p>propagation stopped</p>';
}

child.addEventListener('click', stopEvent, false);

2 个答案:

答案 0 :(得分:2)

如果为真,则会在所有其他添加的函数(称为captured)的开头处考虑,如果不是,则只需添加到列表的末尾(称为{{1}) }),让我们说你有:

bubbled

然后一旦点击它,你就可以在控制台中使用这个顺序:

parent.addEventListener('click', function () { console.log("nocapture1"); }, false);
parent.addEventListener('click', function () { console.log("usecapture1"); }, true);
parent.addEventListener('click', function () { console.log("nocapture2"); }, false);
parent.addEventListener('click', function () { console.log("usecapture2"); }, false);

答案 1 :(得分:1)

指定是否要捕获事件。在这种情况下,没有必要,因为它无论如何都默认为false。有关详细信息,请参阅MDN documentation for element.addEventListener