我经常会有很多标记的地图(假设代表商店)。我有infowindows显示标记所代表的商店的基本信息,然后,在infoWindow HTML上我想放一个按钮,例如,说“详细信息”。 infowindow的html很简单..信息窗口的html包含一个
input type="button" value="Show More" onclick="showMore(' + shopId + ');
每个标记的相关shopId明显不同......
问题是showMore函数必须声明为javascript的全局函数,否则infowindow找不到它。
让我们说所有代码(生成地图,放置标记,声明信息窗口等)都在一个名为function showShops() {}
的函数中,showMore(id)
函数在showShops()函数内,HOw可以我告诉“onclick”事件调用showShops函数中的showMore()函数?
只是检查我的代码,我已将其更改为onclick="alert(' + shopId + ')
..我正确地收到相关商店ID的提醒..
答案 0 :(得分:6)
infowindow的内容可以是字符串或节点。
要实现它,您必须使用将在showShops()
创建此类节点的示例:
var content = document.createElement('div');
content.innerHTML = 'some text<br/>';
var button = content.appendChild(document.createElement('input'));
button.type = 'button';
button.value = 'click me!';
google.maps.event.addDomListener(button,'click', function(){showMore(id)});