右键单击Div(信息框)已禁用。 我该如何启用它

我正在使用Google Maps V3 API的Infobox插件。 http://google-maps-utility-library-v3.googlecode.com/svn/trunk/infobox/docs/reference.html

问题:当我右键单击信息框div时,没有任何反应。 对于作为父信息框div的子元素的任何div也是如此。 但是我有一个输入框,其中包含一些我希望能够选择并右键单击复制的文本。

如果我不能正确点击它,怎么办呢? 更重要的是,如何启用右键点击?

http://google-maps-utility-library-v3.googlecode.com/svn/trunk/infobox/examples/infobox-basic.html


JS代码 不起作用

var infoboxOptions = { content: boxText, disableAutoPan: true, maxWidth: 0, pixelOffset: new google.maps.Size(0, 0), zIndex: null, infoBoxClearance: new google.maps.Size(5, 5), closeBoxURL: '', isHidden: true, pane: "floatPane", enableEventPropagation: false, contextmenu: true }; 

我修改了infobox.js代码以使其正常工作。

改变了这个:

  this.contextListener_ = google.maps.event.addDomListener(this.div_, "contextmenu", ignoreHandler); 

对此:

  this.contextListener_ = google.maps.event.addDomListener(this.div_, "contextmenu", cancelHandler); 

免责声明:这可能会产生其他我不知道的不良影响,因为我没有彻底测试它,但它适用于我的情况。

只需将“contextmenu:true”添加到选项集即可

我从infobox.js源码中提取了这个:

  • @property {boolean} enableEventPropagation传播mousedown,单击,dblclick,
  • InfoBox中的context和contextmenu事件(默认为false以模仿行为
  • google.maps.InfoWindow)。 如果是InfoBox,请将此属性设置为true
  • 被用作地图标签。 iPhone注意:此属性设置无效; 事件是
  • 总是传播。

看起来像将enableEventPropagation属性设置为true应该可以做到!

试试这个代码。 这是非常短的代码和非常有用的代码。 这是Javascript而不是jQuery所以它适用于所有浏览器。

要禁用右键单击

 function yourFunction() { alert("Not allowed"); } document.oncontextmenu = new Function("yourFunction();return false;");