Исчезновение в оверлеях при загрузке с плагином GMap3 jQuery - PullRequest
1 голос
/ 11 декабря 2011

Я пытаюсь получить доступ к содержимому наложения после его добавления.Я добавляю оверлей, который содержит, скажем, div с определенным классом.Если позже я попытаюсь изменить CSS этого класса с помощью jQuery, ничего не произойдет.

В конечном счете, я хочу загрузить карту, а затем добавить массив оверлеев с небольшой задержкой между ними - незапускается по щелчку мыши или при наведении курсора мыши, просто после загрузки карты.

Мой идеальный код:

<script>
var twitmarkers = [];

$(function(){
$('#map').gmap3({ 
                action:'init',
                options:{
                  center:[55.944878,-3.187469],
                  zoom: 15,
                  mapTypeId: google.maps.MapTypeId.SATELLITE
                }
              },
              { 
                action: 'addMarker',
                latLng:[55.944878,-3.187469],
                data: "Remember When..?",
                options:{
                  icon:"icon_youarehere.png"
                }
              }
);

twitmarkers = document.getElementById("tw").getElementsByTagName("marker");
$.each(twitmarkers, function(i) {

var lat = val.getAttribute("lat");
var lng = val.getAttribute("lng");
var text = val.getAttribute("content");
var img = val.getAttribute("user");
var name =  val.getAttribute("name");

    $('#map').gmap3({
                      action:'addMarker',
                      latLng:[lat, lng],
                      options:{
                        icon: "icon_twit.png"
                      }
                    },
                    {
                      action:'addOverlay',
                      latLng:[lat, lng],
                      content:  '<div class="infoBox"><div class="tweet"><img src="' + img + '" /><h1>' + name + '</h1><p>' + text + '</p></div></div>',
                      offset: {
                        x:0,
                        y:0
                      }
                    }
    );

  });   

});
</script>
/*** other stuff ****/
<script>
  $('.infoBox').each(function (i) {
      $(this).delay(1000*i).fadeIn();
  });
</script>

Я попытался создать addOverlay в отдельной функции и вызвать его с помощью setTimeout в пределахцикл $ .each, но ничего не загружается вообще.

Я делаю нелепую ошибку с моим JavaScript или пропускаю что-то еще полностью, или это намного сложнее, чем я ожидал?

...