2016-08-25 116 views

回答

0

可能會導致錯誤。 (使用不使用GoogleMap apikey)

var on = true; 
 
var intervalSeconds = 0.5; 
 
var myLatLng = {lat: -25.363, lng: 131.044}; 
 

 
var map = new google.maps.Map(document.getElementById('map'), { 
 
    zoom: 4, 
 
    center: myLatLng 
 
}); 
 

 
var marker = new google.maps.Marker({ 
 
    position: myLatLng, 
 
    map: map, 
 
    title: 'Hello World!' 
 
}); 
 

 
setInterval(function() { 
 
    if(on) { 
 
    marker.setMap(null); 
 
    } else { 
 
    marker.setMap(map); 
 
    } 
 
    on = !on; 
 
}, intervalSeconds * 1000);
#map { 
 
    width: 800px; 
 
    height: 600px; 
 
    }
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false"></script> 
 
<div id="map"></div>

+0

感謝您的分享。這有助於我提供眨眼效果。 – user6493966

1

google.maps.Marker的類支持setAnimation(animation:Animation)方法,其中根據docs

啓動的動畫。任何正在進行的動畫將被取消。目前支持的動畫有 :BOUNCE,DROP。傳入null將導致任何 動畫停止。

所以,你可以叫

marker.setAnimation(google.maps.Animation.BOUNCE); 

開始反彈動畫和

marker.setAnimation(null); 

停止它。工作示例:

function initMap() { 
 
     var myLatLng = {lat: -25.363, lng: 131.044}; 
 

 
     var map = new google.maps.Map(document.getElementById('map'), { 
 
      zoom: 4, 
 
      center: myLatLng 
 
     }); 
 

 
     var marker = new google.maps.Marker({ 
 
      position: myLatLng, 
 
      map: map, 
 
      title: 'Hello World!' 
 
     }); 
 
    
 
     marker.setAnimation(google.maps.Animation.BOUNCE); 
 
     }
<script type="text/javascript" src="http://www.google.com/jsapi"></script> 
 
<script type="text/javascript"> 
 
google.load("maps", "3",{other_params:"sensor=false"}); 
 
</script> 
 
<body onload="initMap();" style="margin:0px; padding:0px;" > 
 
\t <div id="map" style="height:400px; width:500px;"></div> 
 
</body>

閃爍的動畫,不支持開箱即用,但你可以自己創建它,例子已經包含在其他的答案。

+0

Matej P.感謝您的分享。 – user6493966

+0

沒問題。如果你認爲答案是有幫助的,你可以升級它。謝謝。 –

+0

不幸的是,這是我的新的計算器帳戶和我的聲望小於15 upvote任何人:( – user6493966