2

現在、開発サーバーでV3 APIを介してGoogleマップをテストしています。これを実行しようとしているのは、maps.google.comの通常の「マイマップ」の1つからのKMLレイヤーをインポートすることです。このポイントは、APIに含まれるいくつかの機能が必要ですが、必要に応じてマップにポイントを簡単に追加したり、マップからポイントを削除したりできるようにすることです。

とにかく、APIを介して地図を表示するだけで問題ありません。KMLの取得は問題ありません。KMLに問題はありません。ただし、APIでKMLを地図に追加すると、KMLのポイントは表示されますが、地図全体が白くなるため、表示されているのはマーカーだけです。

マップタイプ(ロードマップと地形など)を無効に変更してみました。繰り返しになりますが、KMLに問題はなく、他の場所でも機能するように見えることを確認しました。これは、私が試したすべてのブラウザで発生しています。これは、コーディングで何かを台無しにしたことを示唆していますが、何がわからないのです。

CMSがマップコードをマックアップしているため、外部の.jsファイルとしてインポートしています。これはどのように見えるかです:

function initialize() {
  var mapOptions = {
    zoom: 7,
    center: new google.maps.LatLng(37.668046, -79.749756),
    mapTypeId: google.maps.MapTypeId.TERRAIN
  }
  var map = new google.maps.Map(document.getElementById("map_canvas"), mapOptions);

  var participantsLayer = new google.maps.KmlLayer('https://maps.google.com/maps/ms?msa=0&msid=204048902337864904598.0004cc332e8034251c1db&ie=UTF8&ll=37.668046,-80.289717&spn=1.959603,5.642338&output=kml');

  participantsLayer.setMap(map);
}

function loadScript() {
  var script = document.createElement("script");
  script.type = "text/javascript";
  script.src = "https://maps.googleapis.com/maps/api/js?key=abc.def&sensor=false&callback=initialize";
  document.body.appendChild(script);
}

window.onload = loadScript;

ありがとうございました。

4

1 に答える 1

0

独自のページで問題なく動作します。私はあなたのcss(おそらくマップコードを台無しにしているあなたのCMS)に何かがあると思います、それがあなたがあなたの質問に付けたタグのいずれかと関係があるのではないかと疑っています。

于 2012-10-18T20:41:08.310 に答える