0

私はグーグルマップを使用しています.私は正常に動作している簡単な例を持っています.ここにコードがあります

function initialize() {
        if (GBrowserIsCompatible()) {

var map = new GMap2(document.getElementById('map_canvas'));
            map.setCenter(new GLatLng(1, 103.849), 5);
            map.addOverlay(new ELabel(new GLatLng(1, 103.849), 1, 'style11'));  
            map.addOverlay(new ELabel(new GLatLng(1, 103.980), 2, 'style11'));
            map.setUIToDefault();}}

この上記の関数はうまく機能しています。今、私はそれを動的にしたいです。中心を設定するのと同じように、変数を渡したいです。 map.addOverlay(新しい ELabel(新しい GLatLng(1, 103.849), 1, 'style11')); この行を変数で使用したい....これは私のコードですが、動作しません.誰かが私を修正できますか?

function initialize() {
        if (GBrowserIsCompatible()) {
            var center = "1, 103.849";
            var Locations = "map.addOverlay(new ELabel(new GLatLng(1, 103.849), 1, 'style11'));map.addOverlay(new ELabel(new GLatLng(1, 103.980), 2, 'style11'));";

            var map = new GMap2(document.getElementById('map_canvas'));
            map.setCenter(new GLatLng(center), 5);
             +Locations +

            map.setUIToDefault();
        }
    }
4

1 に答える 1

1

GLatLng は、文字列ではなく、2 つの数値を引数として取ります。あなたがする必要があります

var centerlat = 1;
var centerlng = 103.849;
map.setCenter(new GLatLng(centerlat,centerlng), 5);

+Locations+何を達成するために設計されているのかわかりません。構文エラーです。今まで使ってmap.addOverlay()いた回線をそのまま利用。

map.addOverlay(new ELabel(new GLatLng(centerlat,centerlng), 2, 'style11'));

バージョン 2 は非推奨であり、存続期間が長くないことに注意してください。API のバージョン 3 を使用します (かなり異なります)。

于 2012-04-30T11:24:03.463 に答える