2

我有与这篇文章完全相同的问题

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

我使用ChromeGoogle 地图 api,我想通过右键单击它来“检查元素”,但它不起作用。另一篇文章中提出的解决方案不起作用。

你知道为什么吗?

编辑:添加一些代码。

var boxText = document.createElement("div");
boxText.id = "infoBoxDiv";
boxText.style.cssText = "margin: 0px;";

var myOptions = {
        content : boxText
        ,disableAutoPan: false
        ,maxWidth: 0
        ,pixelOffset: new google.maps.Size(0, 0)
        ,zIndex: null

        ,boxStyle: { 
            margin : "0px",
            padding : "0px",
            border : "none",
          opacity: 1
          ,width: "420px"
         }
        ,closeBoxMargin: "0px 0px 0px 0px"
        ,closeBoxURL: ""
        ,infoBoxClearance: new google.maps.Size(1, 1)
        ,isHidden: false
        ,pane: "floatPane"
        ,enableEventPropagation: false
};
infowindow = new InfoBox(myOptions); 

我使用: infowindow.setContent(stringContent); 设置内容。

您在这里遇到完全相同的问题:http: //google-maps-utility-library-v3.googlecode.com/svn/trunk/infobox/examples/infobox-basic.html

4

1 回答 1

0

您提到的问题也列出了答案:

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

您需要进行设置contextmenu: true以使其正常工作。

更新

尝试添加以下事件。

google.maps.event.addListener(map, 'click', function(e) {
                contextmenu:true
            });

第二次更新

问题出在您包含的 Infobox.js 文件中。在此文件中,默认情况下已阻止右键单击或上下文菜单。

如果您查看一个普通的 Google Maps InfoWindow,它会像 exoected 一样工作,您无需为此添加任何额外的代码。看看我下面的带有 Infowindow 的 DEMO 并右键单击按预期工作;

右键单击信息窗口演示

于 2013-03-01T17:21:54.460 回答