0

我需要将不同的内容加载到一个 Magnific 弹出窗口中,该弹出窗口在单击附加到 Google 地图中标记的信息框中的按钮时打开。

我计划在 magnificPopup 函数(见下文)之外的数组中列出内容,该函数定义了具有相应内容的所有标记。如何将正确的内容调用到放大弹出窗口中?我是针对标记、按钮还是信息框?...如何?

  window.google.maps.event.addListener(infoBox, "domready", function () {
  $('.open-popup').on('click', function () {
  $.magnificPopup.open({
    items: 
      {
        src: $('<div class="white-popup">Dynamically created element</div>'), // Dynamically created element
        type: 'inline'
      }
  });
  });
});

我所在位置的一个工作示例在这里>> http://jsfiddle.net/asier_adq/JdWmm/4/

在此先感谢您的任何指点。

4

1 回答 1

1

解决了!在这种情况下,信息框是将点击链接到标记的关键。所以鉴于var ib = new InfoBox();

然后,在一个将信息框附加到标记的函数中,我向“ib”对象添加了一个新属性“num”,并由每个标记“i”变量定义它。ib.num = i;

然后我可以在 magnificPopup 函数中使用它来调用存储在数组中的触发标记的值。markerData[ib.num][7]

新脚本:

window.google.maps.event.addListener(ib, "domready", function () {
  $('.open-popup-photo').on('click', function () {
      $.magnificPopup.open({
              items: {
              src: markerData[ib.num][7] 
             },
          type: 'image' // this is default type
         });
    });
});
于 2013-07-22T14:19:09.320 回答