[英]how to display and ignore kml layer in google maps
我有一張谷歌地圖,可以在地圖上單擊並顯示標記:
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圖層,“十字准線”就消失了,我再也無法單擊地圖了。 kmlLayer中是否有一個設置,我可以設置它在仍然顯示該圖層的同時“忽略”該圖層?
謝謝。
從以下位置更改您的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
});
這是一個小提琴: http : //jsfiddle.net/loanburger/jnrnmog4/您可以單擊地圖和位於KML上方的標記
關鍵是KML圖層選項上的clickable = false屬性
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.