-2

这是有问题的页面...

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

去那里,将鼠标悬停在谷歌地图上的一个“绿色”图标上。在您单击它之前,只需将鼠标悬停在它上面,您就会看到一堆代码弹出。

我根本不希望该代码出现,但我很难弄清楚如何在我的 JavaScript 代码中处理它。

处理此地图的 JavaScript 代码可在此处找到...

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

还有一个名为“branch-locations.txt”的 .txt 文件,它基本上只是所有地图标记位置的地址和地理编码。

我不是 JavaScript 大师(只是一个网页设计师),所以如果你能告诉我要修改/包含哪些代码以及放在哪里,那将不胜感激。

多谢你们!

4

1 回答 1

1

似乎您的工具提示属性中有 html。

似乎 code:var label = points[i].textArray[2]; 导致了这个问题。

如果您希望 HTML 标记用于提示,则需要向标记的 mouseover 事件添加一个事件,该事件在元素中显示工具提示,并在 mouseout 时添加一个事件以删除提示元素。

您拥有的另一个选项是将标签更改为没有 HTML 标记的内容。

下面是使用 JavaScript 代码添加提示的示例:

其中一些取自How to call fromLatLngToDivPixel in Google Maps API V3?

//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 回答