我有一个关于谷歌地图和事件处理/收听的问题.
使用jQuery和谷歌地图v3,我可以放置一个地图标记和一个事件监听器,当用户点击标记时打开一个信息.我想做的事情(但到目前为止还没有弄清楚)是在信息泡泡的内容中添加另一个事件处理程序.例如,如果用户点击地图标记打开信息气泡(该部分有效),然后如果他们点击信息块内的某些内容则执行其他操作.我已粘贴下面的代码,提前感谢任何帮助
function addMarker(data) {
var myLatlng = new google.maps.LatLng(data.Latitude, data.Longitude);
var title = data.title? data.title: "";
var icon = $('#siteUrl').val() + 'img/locate.png';
var bubbleContentString = "<span class=\"bubble-details-button\">Get Details about " + title+ "</span>";
myInfoBubble = new InfoBubble({
content: bubbleContentString,
hideCloseButton: true,
backgroundColor: '#004475',
borderColor: '#004475'
});
var myMarker = new google.maps.Marker({
position: myLatlng,
map: map,
title: title,
icon: icon
});
addListenerToMarker(myMarker, myInfoBubble);
markerSet.push(myMarker, myInfoBubble);
}
function addListenerToMarker(marker, bubble){
console.log($(bubble.getContent()).find('.bubble-details-button')[0]);
google.maps.event.addListener(marker, 'click', function() {
if (!bubble.isOpen()) {
google.maps.event.addListenerOnce(bubble, 'domready', function(){ …Run Code Online (Sandbox Code Playgroud) 我有以下jQuery代码块,我用它来将一些html从一个地方复制到另一个地方:
var newLine = $('#popup-clone .popup-contents').last().clone();
newLine.find('.popup-title').html("hello world");
$('#popup-container').append(newLine);
Run Code Online (Sandbox Code Playgroud)
这循环运行几次,所以html会像这样呈现:
<div id="popup-container" style="display: block;">
<div class="popup-contents">
<a class="close">close this popup</a>
<span class="popup-title">Title 1</span>
<span class="popup-description"></span>
<span class="popup-type"></span>
<span class="popup-open"></span>
</div>
<div class="popup-contents">
<a class="close">close this popup</a>
<span class="popup-title">Title 2</span>
<span class="popup-description"></span>
<span class="popup-type"></span>
<span class="popup-open"></span>
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
等等
我想用class ="popup-contents"为每个div添加一个唯一的ID,但我不知道我怎么做到这一点?任何帮助表示赞赏.