2014-07-24 3 views
0

Gmap3 및 RichMarker를 사용하는지도가 있으며, 대부분 작동합니다. 유일한주의 사항은 마우스로 가리거나 마커 또는 클러스터를 클릭 할 수 없다는 것입니다. 나는 이것이 단순한 CSS 문제라고 생각했지만, 그렇지 않았다. 표식 위에 마우스를 올려 놓더라도이 그림에 표시된대로 커서는 바뀌지 않습니다 : http://imgur.com/oSQbXiI. https://gist.github.com/anonymous/d94d4476875cf58413b2#file-map-javascript-php-L133Gmap3 표시자를 볼 수는 있지만 그들과 상호 작용할 수 없습니다.

내가 커서도 변경되지 않습니다 이유를 알아낼 수 없습니다 :

마커의 코드에 라인 (133) (또는 질문 아래)에서 시작한다. 일반 Google지도에서도 마커 위로 마우스를 올리면 커서가 포인터로 바뀝니다./

,marker: { 
    values: [ 
     {foreach $items as $item} 
      { 
       latLng: [{ifset $item->optionsDir['gpsLatitude']}{!$item->optionsDir['gpsLatitude']}{else}0{/ifset},{ifset $item->optionsDir['gpsLongitude']}{!$item->optionsDir['gpsLongitude']}{else}0{/ifset}], 
       data: '<div class="marker-holder"><div class="marker-content{ifset $item->thumbnailDir} with-image"><a href="{!$item->link}"><img src="{thumbnailResize $item->thumbnailDir, w => 280, h => 160}" alt="">{else}">{/ifset}<div class="map-item-info"><div class="title">&#36;'+{ifset $item->optionsDir["price"]}{$item->optionsDir["price"]}+{/ifset}' <small>{!$item->rooms}bd/{!$item->baths}ba</small></div><div class="address">'+{ifset $item->optionsDir["address"]}{$item->optionsDir["address"]|nl2br}+{/ifset}',<br>'+{ifset $item->optionsDir["address2"]}{$item->optionsDir["address2"]|nl2br}+{/ifset}'</div><div class="timestamp">{!$item->time}</div></div></a><div class="arrow"></div><div class="close">x</div></div></div></div>' 
      } 
     {if !($iterator->last)},{/if} 
     {/foreach} 
    ], 
    options:{ 
     draggable: false, 
     content: "<div class='cluster-bg'><div class='cluster'><span>1</span></div></div>", 
     width: 44, 
     shadow: 0, 
     height: 44 
    }, 
    cluster:{ 
     radius: 100, 
     // This style will be used for clusters with more than 0 markers 
     0: { 
      content: "<div class='cluster-bg'><div class='cluster cluster-1'><span>CLUSTER_COUNT</span></div></div>", 
      width: 44, 
      height: 44 
     }, 
     events: { 
      click: function(cluster) { 
       map.panTo(cluster.main.getPosition()); 
       map.setZoom(map.getZoom() + 2); 
      }, 
      mouseover: function(cluster) { 
       $(cluster.main.getDOMElement()).find('.cluster-bg').css('padding', '10px 10px'); 
       $(cluster.main.getDOMElement()).find('.cluster-bg').css('margin', '-4px 0 0 -4px'); 
       $(cluster.main.getDOMElement()).find('.cluster-bg').css('background-color', 'rgba(0,0,0,0.2)'); 
       $(cluster.main.getDOMElement()).find('.cluster').css('background-color', '#343434'); 
      }, 
      mouseout: function(cluster) { 
       $(cluster.main.getDOMElement()).find('.cluster-bg').css('padding', '6px'); 
       $(cluster.main.getDOMElement()).find('.cluster-bg').css('margin', '0'); 
       $(cluster.main.getDOMElement()).find('.cluster-bg').css('background-color', 'rgba(0,0,0,0.15)'); 
       $(cluster.main.getDOMElement()).find('.cluster').css('background-color', 'rgba(85, 151, 183, 1.0)'); 
      } 
     } 
    }, 
    events: { 
     click: function(marker, event, context){ 
      map.panTo(marker.getPosition()); 

      infobox.setContent(context.data); 
      infobox.open(map,marker); 

      // if map is small 
      var iWidth = 260; 
      var iHeight = 300; 
      if((mapDiv.width()/2) < iWidth){ 
       var offsetX = iWidth - (mapDiv.width()/2); 
       map.panBy(offsetX,0); 
      } 
      if((mapDiv.height()/2) < iHeight){ 
       var offsetY = -(iHeight - (mapDiv.height()/2)); 
       map.panBy(0,offsetY); 
      } 

     } 
    } 
} 
+0

디버깅 도움말 ("이 코드가 작동하지 않는 이유는 무엇입니까?")에는 원하는 동작, 특정 문제 또는 오류 및 ** 문제를 재현하는 데 필요한 ** 가장 짧은 코드 **가 포함되어야합니다. ** . –

+0

그래서 요점 연결은 허용되지 않습니까? – Cucumber

+1

질문에 Gist! = * 코드가 있기 때문에 *, 아니요. 그 이유는 요점 코드를 삭제하기로 결정했다면,이 질문은 미래의 독자에게는 완전히 쓸모 없게됩니다. –

답변

0

이것은 Gmaps API의 실험 버전에서 자주 발생하는 것으로 나타났습니다. 수정 같은 URL의 끝에 "v=3.16"에 태그를 지정하여 스크립트의 이전 버전으로 되돌릴 수 있습니다 :

http://maps.google.com/maps/api/js?v=3.16 

모든 덕분에 내 문제와 많은 다른 사람의 사이의 유사성을 지적 geocodezip 간다.

관련 문제