【问题标题】:Can't click on Google Maps InfoBox无法点击谷歌地图信息框
【发布时间】:2013-02-28 04:51:40
【问题描述】:

为什么我的信息框无法点击?

我创建了 boxText,如下所示:

var boxText = document.createElement("div");
boxText.style.cssText = "width:210px; text-overflow: ellipsis; white-space: nowrap; overflow: hidden; padding:18px; color:#FFFFFF; text-shadow: 0 -1px 1px #000000;"
boxText.innerHTML = "<span class='infoBox'>"+selectedDistributorArr[0].title+"</span>";
boxText.id = "boxText";

我也将它分配给我的标记的信息框:

var myBxOptions = {
                 content: boxText,
                 disableAutoPan: false,
                 maxWidth: 0,
                 pixelOffset: new google.maps.Size(-145, -130),
                 zIndex: null,
                 boxStyle: { 
                  background: "url('images/icons/xhdpi/tooltip.png') no-repeat",
                  width: "271px",
                  height: "80px"
                 },
                 closeBoxURL: "",
                 infoBoxClearance: new google.maps.Size(1, 1),
                 isHidden: false,
                 pane: "floatPane",
                 enableEventPropagation: false
        };
marker.infobox = new InfoBox(myBxOptions);

我也分配给点击监听器,但警报根本没有显示!

google.maps.event.addDomListener(boxText, 'click', function() {
            alert("ALERT!");
});

我相信这是正确的做法,还是我错过了什么?

【问题讨论】:

    标签: android google-maps cordova jquery-mobile


    【解决方案1】:

    只是几个快速的想法。

    你把听众放在正确的地方了吗? boxText 只是一个变量,而 infobox 在我看来是需要放置的。

    另外,如果不是这样,将 enableEventPropagation 设置为 false 是否会阻止侦听器触发?

    【讨论】:

    • 嗨 Rafe,抱歉又回到我的问题了。是的,我让听众纠正了事情,因为我遵循了一些教程。我认为 enableEventPropagation 必须设置为 false 才能启用事件监听器。
    猜你喜欢
    • 2017-09-13
    • 1970-01-01
    • 2013-12-28
    • 2018-07-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-04-29
    • 1970-01-01
    相关资源
    最近更新 更多