Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/88.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
D3.js D3缩放中未触发鼠标悬停事件_D3.js - Fatal编程技术网

D3.js D3缩放中未触发鼠标悬停事件

D3.js D3缩放中未触发鼠标悬停事件,d3.js,D3.js,d3 .选择('正文') .append('svg') .attr('width',300) .attr('height',300) .on('mousedown',()=>{ console.log('mousedown触发器') }) .on('mouseup',()=>{ console.log('mouseup触发器') }) .打电话( d3.zoom() .scaleExtent([0.1,10]) .on('zoom',function(){ console.log('zoom t

d3
.选择('正文')
.append('svg')
.attr('width',300)
.attr('height',300)
.on('mousedown',()=>{
console.log('mousedown触发器')
})
.on('mouseup',()=>{
console.log('mouseup触发器')
})
.打电话(
d3.zoom()
.scaleExtent([0.1,10])
.on('zoom',function(){
console.log('zoom trigger')
})
)

正如Gerardo Furtado在评论中指出的,d3 zoom(从d3.v4开始)阻止了mouseup事件。但是,如果在缩放行为之前注册,则会触发
单击
事件,如您的示例所示


见讨论

请查看API:。它说
mouseup-->默认阻止:是
。根据我的测试,无论是在注册缩放之前还是之后注册单击,效果都是一样的。此外,如果发生mousemove事件,则也不会触发click。因此,你没有提出任何解决办法。