在jquery中使用mouseover事件的问题

时间:2017-09-25 20:16:34

标签: javascript jquery google-maps

我正在使用谷歌地图圈示例,我希望每当用户在盘旋的城市盘旋时,应该会出现一个警告框。 这是代码 -

<script> 
src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js">
</script>
<body>
<div id="map"></div>
<script>
  var citymap = {
    chicago: {
      center: {lat: 41.878, lng: -87.629},
      population: 2714856
    }, 
  };
  function initMap() {
    var map = new google.maps.Map(document.getElementById('map'), {
      zoom: 4,
      center: {lat: 37.090, lng: -95.712},
      mapTypeId: 'terrain'
    });

    for (var city in citymap) {
      var cityCircle = new google.maps.Circle({
        strokeColor: '#FF0000',
        strokeOpacity: 0.8,
        strokeWeight: 2,
        fillColor: '#FF0000',
        fillOpacity: 0.35,
        map: map,
        center: citymap[city].center,
        radius: Math.sqrt(citymap[city].population) * 100
      });
    }
  }
  var cityCircle= $('#mydiv');
  $(document).ready(function(){
      $('#mydiv').mouseover(function(){
      alert("welcome to chicago");
    });
 });
</script>
<script async defer
src="https://maps.googleapis.com/maps/api/js?key=mykey&callback=initMap">
</script>

然而,当我将鼠标悬停在城市上时,会出现圆圈但是没有出现警告框。 请指导我错在哪里! 感谢。

2 个答案:

答案 0 :(得分:0)

您的ID在鼠标悬停功能中设置为“mydiv”,但您的div名为“map”

编辑:

    google.maps.event.addListener(cityCircle,'mouseover',function()
            {alert("welcome to chicago"); 
    });

答案 1 :(得分:0)

在for循环中定义圆圈

 cityCircle.addListener('mouseover', function() {
    alert("welcome to chicaho");
  });