0

こんにちは私は例や他のウェブサイトからのコードを自分に合うように適応させました。「名前」「住所」「電話」「品種」の4つの属性を表示するための情報ウィンドウが必要です。削除したらvar type = markers[i].getAttribute("type");(これはGoogleマップのサンプルコードの既存の属性です)

次のように置き換えます。

var phone = markers[i].getAttribute("phone");
var breeds = markers[i].getAttribute("breeds");

マップにはマーカーが表示されません。私はjavascriptにそれほど詳しくないので、おそらく私が見逃している単純なものです。マップはここで見つけることができます:http://connormccarra.com/test/

情報は次のxmlファイルから取得されています:http://connormccarra.com/test/phpsqlajax_genxml3.php

function load() {
    var map = new google.maps.Map(document.getElementById("map"), {
        center: new google.maps.LatLng(53.5076512854544, -7.701416015625),
        zoom: 7,
        mapTypeId: 'roadmap'
    });
    var infoWindow = new google.maps.InfoWindow;


    // Change this depending on the name of your PHP file
    downloadUrl("phpsqlajax_genxml3.php", function(data) {
        var xml = data.responseXML;
        var markers = xml.documentElement.getElementsByTagName("marker");
        for (var i = 0; i < markers.length; i++) {
            var name = markers[i].getAttribute("name");
            var address = markers[i].getAttribute("address");
            var type = markers[i].getAttribute("type");
            var point = new google.maps.LatLng(
                parseFloat(markers[i].getAttribute("lat")),
                parseFloat(markers[i].getAttribute("lng")));
            var html = "<b>" + name + "</b> <br/>" + address;
            var icon = customIcons[type] || {};
            var marker = new google.maps.Marker({
                map: map,
                position: point,
                icon: icon.icon,
                shadow: icon.shadow
            });
            bindInfoWindow(marker, map, infoWindow, html);
        }
    });
}

乾杯!

4

1 に答える 1

2

これは問題のように見えます:

      var icon = customIcons[type] || {};

コピーしたコードは、「タイプ」に基づいてアイコンを変更するように設定されています。行を削除した場合:

      var type = markers[i].getAttribute("type");

明確なjavascriptエラーがあるはずです。カスタムアイコンが必要ない場合は、その行をvar icon={};に変更します。または、それを削除して、マーカーを次のように変更します。

      var marker = new google.maps.Marker({
        map: map,
        position: point
      });
于 2012-08-04T17:22:30.597 に答える