-2

これは問題のページです...

http://dev.digitalskydesign.com/locations/

そこに行き、Googleマップの「緑色」のアイコンの1つにカーソルを合わせます。クリックする前に、その上にカーソルを合わせると、一連のコードがポップアップ表示されます。

そのコードをまったく表示したくないのですが、JavaScriptコードでそれを処理する方法を理解するのに苦労しています。

このマップを処理するJavaScriptコードはここにあります...

http://dev.digitalskydesign.com/wp-content/themes/Teamsters-FCU/locations-iframe.php

'branch-locations.txt'と呼ばれる.txtファイルもあります。これは、基本的にすべてのマップマーカーの場所のアドレスと地理コードです。

私はJavaScriptの第一人者ではないので(単なるWebデザイナー)、変更/含めるコードとその配置場所を教えていただければ幸いです。

みんなありがとう!

4

1 に答える 1

1

tooltip プロパティに html があるようです。

コード:var label = points[i].textArray[2]; が問題を引き起こしているようです。

ヒントに HTML マークアップが必要な場合は、要素に toolTip を表示するマーカーの mouseover イベントにイベントを追加し、ヒント要素を削除するために mouseout にイベントを追加する必要があります。

もう 1 つのオプションは、ラベルを HTML マークアップのないものに変更することです。

JavaScript コードを使用してヒントを追加する例を以下に示します。

そのうちのいくつかは、Google Maps API V3 で fromLatLngToDivPixel を呼び出す方法から取られましたか?

//You need this to get the projection... put this code at the top of your javascript after you declare map
var overlay = new google.maps.OverlayView();
overlay.draw = function() {};
overlay.setMap(map); //Where map is your Map2 instance

//Put this code at line 164
var label = '';
points[i].marker = new GMarker(points[i],{title: label, icon:tinyIcon(opts.icon)});
google.maps.event.addListener(points[i].marker, 'mouseover', function() {

//Create the tip and get the Point so position the tip
var toolTip = document.createElement('div'),        
    point = overlay.getProjection().fromLatLngToDivPixel(this.getPosition());
toolTop.styles.position = 'absolute';
toolTop.styles.left = point.x;
toolTop.styles.top = point.y

document.body.appendChild(toolTip);

google.maps.event.addListener(this, 'mouseout', function() {
    document.body.removeChild(toolTip);
  });

});
于 2012-05-29T20:14:30.770 に答える