Javascript 设置动画谷歌地图标记

Javascript 设置动画谷歌地图标记,javascript,google-maps,Javascript,Google Maps,我正试图将反弹动画设置为一个特定的标记,但每当我调用marker.setAnimation(google.maps.animation.BOUNCE)方法控制台时会说“无法读取未定义的属性'BOUNCE'”,这意味着标记定义不正确?但是如果我使用marker.setTitle('Bouncing'),标题就会改变。我做错什么了吗,这是代码 <script type="text/javascript"> function addMarker(lat,lng,img

我正试图将反弹动画设置为一个特定的标记,但每当我调用
marker.setAnimation(google.maps.animation.BOUNCE)
方法控制台时会说“无法读取未定义的属性'BOUNCE'”,这意味着标记定义不正确?但是如果我使用marker.setTitle('Bouncing'),标题就会改变。我做错什么了吗,这是代码

   <script type="text/javascript">
        function addMarker(lat,lng,img,title,bounce)
        {
         var myLatLng = new google.maps.LatLng(lat, lng);

        var marker = new google.maps.Marker({
                position: myLatLng,
                map: map,
                icon: img,
            title: title,
            zIndex: 1
            });

            if(bounce=='set'){marker.setAnimation(google.maps.Animation.BOUNCE);
            marker.setTitle('Bouncing');};

        }
    </script>

功能添加标记(lat、lng、img、标题、弹跳)
{
var mylatng=new google.maps.LatLng(lat,lng);
var marker=new google.maps.marker({
职位:myLatLng,
地图:地图,
图标:img,
标题:标题,,
zIndex:1
});
if(bounce=='set'){marker.setAnimation(google.maps.Animation.bounce);
marker.setTitle('Bouncing');};
}
php脚本

    for($i=0;$i<count($losDatos);$i++)
    {

    $utc=new DateTime($losDatos[$i]['fechaUtc']);
    $utc->modify('-'.horarioVerano().' hours');
    echo $utc->format("Y-m-d H:i:s");
    if($losDatos[$i]['camion']==$camion)
    {
    $script.="addMarker(".$losDatos[$i]['latitud'].",".$losDatos[$i]['longitud'].",".$losDatos[$i]['img'].",".$losDatos[$i]['nombre'].",'set');";
    }else
    {
       $script.="addMarker(".$losDatos[$i]['latitud'].",".$losDatos[$i]['longitud'].",".$losDatos[$i]['img'].",".$losDatos[$i]['nombre'].");";
    }

    }

echo $script;
for($i=0;$imodify('-'.horarioVerano().hours');
echo$utc->格式(“Y-m-d H:i:s”);
如果($losDatos[$i]['camion']==$camion)
{
$script.=“addMarker(“.$losDatos[$i]['latitud']”、“$losDatos[$i]['longitud']”、“$losDatos[$i]['img']”、“$losDatos[$i]['nombre']”、'set');”;
}否则
{
$script.=“addMarker(“..$losDatos[$i]['latitud']”、“$losDatos[$i]['longitud']”、“$losDatos[$i]['img']”、“$losDatos[$i]['nombre']”;”;
}
}
echo$脚本;

setAnimation参数应为“BOUNCE”或“DROP”字符串

设置动画(“反弹”)

marker.setAnimation(“DROP”)

其中marker是google maps标记对象:

尝试:

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

您在代码中指定它的方式是正确的

{
  marker.setAnimation(google.maps.Animation.BOUNCE);
}
您应该检查的是,标记是否真的引用了地图上的标记对象

可以尝试通过标记选项设置动画

var markerOptions = {animation:google.maps.Animation.BOUNCE}
或者尝试在不使用
if(条件)
的情况下设置动画,以查看其是否反弹

另外,请在您的
if
语句中以这种方式检查是否相等

if(bounce==="set"){ /*animate marker*/}

您的代码应该可以工作。看看这个JSFIDLE,即使在控制台中编写整个过程以执行它,也会出现相同的错误returned@Gustavo你能发布你的全部代码吗?这就是全部代码!:S我只是根据一些sql行结果调用它,你看到地图上的标记了吗?你必须通过Goog提供的枚举le.不仅仅是text.brother这个方法不适用于显示错误的标记器….?请详细说明您的答案..Plz