谷歌地图多标记工具提示只显示在Firefox的第一个标记

Abh*_*rty 4 php firefox google-maps codeigniter

我正在开发一个codeigniter项目,该项目在谷歌地图中显示具有特定持续时间标记的访问路径.地图,标记,工具提示,折线一切都很好用铬.

但是在Firefox中,当鼠标悬停时,只有一个工具提示显示在标记上.其他工具提示不会出现.然后,如果我在地图单击并再次悬停在任何标记上,工具提示会显示在该标记上,但不会在其他标记上显示.每个标记都是一样的.问题只出现在firefox中.我从数据库中获取位置.jsfiddle链接是:http://jsfiddle.net/msz08tjx/ 以下是整个代码:

<script>
    jQuery(document).ready(function(){

$('#frmGPSTag').validationEngine('attach',{
            onValidationComplete: function(form, status){
                if (status == true){
                    mapDisplay();
                }
            }
        });

function mapDisplay(){                          
            $.getJSON('<?php echo base_url(); ?>user/gps_tags_json/'+$("#datepicker1").val()+'/'+$("#datepicker2").val(), function(data){
                var locations = new Array();
                $.each( data, function( key, val ) {
                    var location = [ parseFloat(val.latitude), parseFloat(val.longitude), val.gps_tag_timestamp];
                    locations.push(location);
                });
                if(locations.length > 0)
                {
                    $("#map").css({'height': '600px'});

                    var map = new google.maps.Map(document.getElementById('map'), {
                    mapTypeId: google.maps.MapTypeId.ROADMAP
                    });

                    var marker, point, travelCoordinates = new Array();
                    var bounds = new google.maps.LatLngBounds();

                    for (var i = 0; i < locations.length; i++) {
                        point = new google.maps.LatLng(locations[i][0], locations[i][1]);
                          marker = new google.maps.Marker({
                            position: point,
                            map: map,
                            title: locations[i][2]
                          });

                        travelCoordinates[i] = point 
                        bounds.extend(marker.position); 
                    }
                    map.fitBounds(bounds);
                    if(map.getZoom()> 10){
                    map.setZoom(10);
                    }

                    var travelPath = new google.maps.Polyline({
                        path: travelCoordinates,
                        geodesic: true,
                        strokeColor: '#FF0000',
                        strokeOpacity: 1.0,
                        strokeWeight: 2
                    });

                    travelPath.setMap(map); 
                }
                else
                {
                    $("#map").empty();
                    $("#map").css({'background-color': '','height': 'auto'});
                    $("#map").html("<?php echo '<ul class=\"list-group\"><li class=\"list-group-item list-group-item-warning\">'.$this->lang->line('no_record').'</li></ul>'; ?>");
                }
            });     
        }

    });
</script>
Run Code Online (Sandbox Code Playgroud)

和我的datepicker功能是:

<script type="text/javascript">
    $(function() {
       $( "#datepicker1" ).datepicker({
          dateFormat: 'yy-mm-dd',
          onClose: function( selectedDate ) {
            $( "#datepicker2" ).datepicker( "option", "minDate", selectedDate );
          }
      });

      $( "#datepicker2" ).datepicker({
          dateFormat: 'yy-mm-dd',
          onClose: function( selectedDate ) {
            $( "#datepicker1" ).datepicker( "option", "maxDate", selectedDate );
          }
      });
    });
</script>
Run Code Online (Sandbox Code Playgroud)

我在网上看到了很多类似的问题.但是没有一个解决方案适合我.任何帮助都会受到极大的关注.Thanx提前.

jsfiddle链接是:http://jsfiddle.net/msz08tjx/

小智 7

使用刚刚发布的v3 js似乎没有解决Firefox中的问题.另外添加以下标记选项将...

optimized:false
Run Code Online (Sandbox Code Playgroud)

引用 - 问题7136:错误:多个标记标题在稳定(3.17.15)版本的API中不起作用.