2015-11-02 79 views
0

我有一些GPS坐标在我的应用程序中使用Primefaces显示。我使用p:map小部件+轮询而没有特别的问题。现在我想用动画BOUNCE制作最后一个标记(实际位置)。在primefaces中,setAnimation方法并不存在。 JavaScrpit可以完成这项工作吗?Primefaces gmap marker:setAnimation BOUNCE

<p:poll interval="60" listener="#{mapPage.modelRefresh}" oncomplete="handleComplete(xhr, status, args)" update="gMap"/> 


    <p:gmap widgetVar="gMap" id="gMap" center="45.893378,12.32402" zoom="10" type="ROADMAP" style="width:100%;height:80vh" 
    model="#{mapPage.model}" > 

     <p:ajax event="overlaySelect" listener="#{mapPage.onMarkerSelect}" /> 

     <p:gmapInfoWindow id="infoWindow"> 
      <p:outputPanel style="text-align: center; display: block; margin: auto"> 
       <h:outputText value="#{mapPage.marker.text}" /> 
      </p:outputPanel> 
     </p:gmapInfoWindow> 

    </p:gmap> 


</h:body> 

回答

0

我找到了一个解决方案:

<script>   
function update() { 
       var gmap = PF('gMap').getMap(); 
       for (var i in gmap.markers) { 
        var oldMarker = gmap.markers[i]; 
       } 
       oldMarker.setAnimation(google.maps.Animation.BOUNCE);   } 
</script> 



<poll interval="60" listener="#{mapPage.modelRefresh}" oncomplete="update()" update="gMap"/>