【问题标题】:right-click on a d3.js element: how to prevent browser context menu to appear右键单击 d3.js 元素:如何防止出现浏览器上下文菜单
【发布时间】:2014-08-30 11:11:50
【问题描述】:

我绘制了一些 d3.js 元素,例如:

 // draw rectangle 
  svg.selectAll(".rect").append("rect")
        .attr("y", 10)
        .attr("x", 10)
        .attr("height", 5)
        .attr("width", 5)
        .on("contextmenu", function (d, i) {  
    // react on right-clicking
 });

它工作正常,但也打开了浏览器的上下文菜单。我怎样才能防止这种情况发生?

【问题讨论】:

  • 出于礼貌,如果它解决了您的问题,您应该接受一个答案,就像布赖恩的回答...
  • 感谢您的提醒!

标签: javascript d3.js


【解决方案1】:

d3.event.preventDefault(); 添加到您的函数中。

 // draw rectangle 
  svg.selectAll(".rect").append("rect")
        .attr("y", 10)
        .attr("x", 10)
        .attr("height", 5)
        .attr("width", 5)
        .on("contextmenu", function (d, i) {
            d3.event.preventDefault();
           // react on right-clicking
        });

【讨论】:

  • 这段代码对我有用。如果我是 OP,我会接受这个答案。
【解决方案2】:

我理解并为您提供以下代码,请检查并询问您是否需要更多...

// draw rectangle 
  svg.selectAll(".rect").append("rect")
        .attr("y", 10)
        .attr("x", 10)
        .attr("height", 5)
        .attr("width", 5)
        .on("contextmenu", function (d, i) {
            d3.event.preventDefault();
           // react on right-clicking
        });

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-04-23
    • 2010-11-17
    • 2016-12-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-04-08
    • 2021-09-10
    相关资源
    最近更新 更多