右键单击d3.js元素:如何防止出现浏览器上下文菜单

时间:2014-07-09 12:16:36

标签: javascript d3.js

我绘制了一些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
 });

它工作正常,但也打开浏览器的上下文菜单。我该如何防止这种情况发生?

2 个答案:

答案 0 :(得分:26)

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
        });

答案 1 :(得分:-1)

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

document.onmousedown=disableclick;
status="Right Click Disabled";
Function disableclick(event)
{
  if(event.button==2)
   {
     alert(status);
     return false;    
   }
}