0

だから私は同じウェブページに2つのGoogleマップを持っています。このページは、次のようにjQueryを使用して非表示および表示される多数のdivで構成されています。

$('a#FibreTrigger').click(function () {
    clearTabs();

    $('#FibreTab').show();
    $('a#FibreTrigger').addClass('active');
    google.maps.event.trigger(fibreMap, 'resize');
    return false;
});

//hide all of the tabs
function clearTabs() {
    $('#OptusTab').hide();
    etc.

    $('a#OptusTrigger').removeClass('active');
    etc.
}

(マップが正しく表示されない場合があるため、サイズ変更トリガーが使用されます)両方のマップを表示するように設定してからマップをロードすると、マップは期待どおりに機能します。

ただし、ロード時にマップの1つが非表示になっていると、奇妙な問題が発生します。マップが表示され、レイヤー、マーカーなどがマップ上にありますが、マップの中心となるのは左上隅です。

それは大きな問題ではありませんが、私が何か間違ったことをしているのか、それともこれが私がしていることに避けられない問題なのかを知りたいのですが。

4

2 に答える 2

0

数日前に同じ問題が発生しました。これは、マップをロードする前にレイヤーとマーカーをロードし、最初にマップをロードしてから、マーカーとレイヤーを作成するためです。

于 2012-07-19T06:56:19.193 に答える
0

'body'タグに、ある種のinitialize()またはload()関数があると思いますか?ページの読み込み時にこの関数を呼び出すのではなく、マップが含まれているdivが表示されているときに呼び出すことを試みましたか?

于 2012-07-19T06:58:10.227 に答える