当前位置:  开发笔记 > 编程语言 > 正文

在Google Maps API 3中获取标记的DOM元素

如何解决《在GoogleMapsAPI3中获取标记的DOM元素》经验,为你挑选了1个好方法。

我正试图找到一种方法来获取标记的DOM元素.Google似乎使用不同的元素来显示标记,并使用其中一个来处理事件.

到目前为止,我已经弄明白了两件事.有一个生成的变量被称为fb将DOM元素保存在标记对象上,但我认为下次Google更新API时,它会被命名为不同的东西.所以没有去.

其次,如果将click事件附加到标记,API会将事件DOM元素作为参数发送到您指定的函数.在Firebug中查看它时,我找不到两者之间的任何关系.

我想要完成的是操纵DOM元素()并提供更多信息,然后只是一个带背景的'div'元素.

我在版本2中使用name属性(未记录)在div元素上生成id.

有没有人有想法?



1> 小智..:

我发现这种方法很有用,虽然它可能不适合所有环境.设置标记图像时,请为URL添加唯一锚点.例如:

// Create the icon
var icon = new google.maps.MarkerImage(
    "data/ui/marker.png",
    new google.maps.Size(64, 64),
    new google.maps.Point(0,0),
    new google.maps.Point(48, 32)
);

// Determine a unique id somehow, perhaps from your data
var markerId = Math.floor(Math.random() * 1000000);
icon.url += "#" + markerId;

// Set up options for the marker
var marker = new google.maps.Marker({
    map: map,
    optimized: false,
    icon: icon,
    id: markerId,
    uniqueSrc: icon.url
});

现在你有一个独特的选择器,即:

$("img[src='data/ui/marker.png#619299']")

或者如果你有标记:

$("img[src='" + marker.uniqueSrc + "']")

推荐阅读
贴进你的心聆听你的世界
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有