'mousewheel.zoom'事件('d3.js')在Firefox浏览器上不起作用(我得到了最新版本的FF)。
这是我用来从我的地图中移除MOUSEWHEEL EVENT的一小段代码:
function draw_data_center(file_name){
d3.json(file_name, function(json) {
d3.select("#div_data_center svg").remove();
vis = d3.select("#div_data_center").append("svg")
.attr("width", $("#div_data_center").width())
.attr("height", $("#div_data_center").height())
.attr("pointer-events", "all")
.append('svg:g')
.call(zoom.on("zoom", redraw))
.on("mousewheel.zoom", null) //in this line of code I removed the 'mousewheel' functionality BUT it doesn't work in Firefox browser (the other browsers work correctly)
.on("click.zoom", null)
.on("touchstart.zoom", null)
.append('svg:g').......(etc...ect)
有人可以帮我解决这个问题吗?
答案 0 :(得分:3)
我不知道你是否已经解决了问题,但在找到答案时我偶然发现了你的页面。
我发现很多文档都说明,对于Firefox,将“DOMMouseScroll.zoom”设置为null可以解决问题。但是,看起来FireFox已经改变了它们检测滚轮的方式。以下是您修改的代码,以包含修复:
vis = d3.select("#div_data_center").append("svg")
.on("mousewheel.zoom", null)
.on("DOMMouseScroll.zoom", null) // disables older versions of Firefox
.on("wheel.zoom", null) // disables newer versions of Firefox