D3版本4.0
prevents some events在调用d3.zoom()
时冒泡,所以如果我想在SVG元素本身上capture a mouseup
event,则会产生问题。
事件监听器被“阻止”,因此例如下面的代码不起作用:
document.querySelector('svg').addEventListener("mouseup", function(e){
alert(1)
}, true);
即使SVG位于另一个元素内,事件捕获也不会对该元素起作用。甚至不在“document.body”上
应用于window
对象时仅才能正常工作:
window.addEventListener("mouseup", function(e){
alert( 'TYPE: '+e.type + '\nTARGET: '+e.target )
}, true);
为什么捕获仅适用于window
对象?