如何在 google 地图中显示和忽略 kml 图层
how to display and ignore kml layer in google maps
我有一个 google 地图,我可以在其中单击地图并显示标记:
var myOptions = {
zoom: 16,
center: latlng,
mapTypeId: google.maps.MapTypeId.HYBRID,
draggableCursor: 'crosshair',
draggable: true,
panControl: true,
zoomControl: true,
scaleControl: true,
mapTypeControlOptions: {
style: google.maps.MapTypeControlStyle.DROPDOWN_MENU
}
};
map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
无论我点击哪里,都会调用一个函数来做一些工作(添加标记)。
我被要求添加一个 kml 图层:
var url = window.location.protocol + "//" + window.location.host + "/data/polygon.cfm?TYPE=GEOID&VALUE=" + getUrlVars()["GEOID"] + "&LC=641400FF&LW=3&FC=14F11C2E&F=1&FO=1";
var kmlLayer = new google.maps.KmlLayer(url, {
suppressInfoWindows: true,
preserveViewport: false,
map: map
});
现在,一旦添加了kml图层,"crosshair"就没有了,我不能再点击地图了。 kmlLayer 中是否有我可以设置 "ignores" 图层同时仍显示它的设置?
谢谢。
更改您的 KML 初始化代码:
var kmlLayer = new google.maps.KmlLayer(url, {
suppressInfoWindows: true,
preserveViewport: false,
map: map
});
到
var ctaLayer = new google.maps.KmlLayer(
{
url: url,
suppressInfoWindows: true,
map:map,
zindex: 0,
clickable : false
});
这是fiddle:http://jsfiddle.net/loanburger/jnrnmog4/您可以点击地图和KML上方的标记
关键是 KML 图层选项上的可点击 = false 属性
我有一个 google 地图,我可以在其中单击地图并显示标记:
var myOptions = {
zoom: 16,
center: latlng,
mapTypeId: google.maps.MapTypeId.HYBRID,
draggableCursor: 'crosshair',
draggable: true,
panControl: true,
zoomControl: true,
scaleControl: true,
mapTypeControlOptions: {
style: google.maps.MapTypeControlStyle.DROPDOWN_MENU
}
};
map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
无论我点击哪里,都会调用一个函数来做一些工作(添加标记)。
我被要求添加一个 kml 图层:
var url = window.location.protocol + "//" + window.location.host + "/data/polygon.cfm?TYPE=GEOID&VALUE=" + getUrlVars()["GEOID"] + "&LC=641400FF&LW=3&FC=14F11C2E&F=1&FO=1";
var kmlLayer = new google.maps.KmlLayer(url, {
suppressInfoWindows: true,
preserveViewport: false,
map: map
});
现在,一旦添加了kml图层,"crosshair"就没有了,我不能再点击地图了。 kmlLayer 中是否有我可以设置 "ignores" 图层同时仍显示它的设置?
谢谢。
更改您的 KML 初始化代码:
var kmlLayer = new google.maps.KmlLayer(url, {
suppressInfoWindows: true,
preserveViewport: false,
map: map
});
到
var ctaLayer = new google.maps.KmlLayer(
{
url: url,
suppressInfoWindows: true,
map:map,
zindex: 0,
clickable : false
});
这是fiddle:http://jsfiddle.net/loanburger/jnrnmog4/您可以点击地图和KML上方的标记
关键是 KML 图层选项上的可点击 = false 属性