javascript - 谷歌地图 : Can't Change Marker Icon

标签 javascript google-maps

我创建了一种使用地理位置查找用户位置的方法,并将该位置传递给我的函数以向 Web 服务发出请求。收到来自网络服务的数据后,一些标记将添加到 map 中。标记已显示在 map 上,但显然当我尝试更改标记图标时,标记消失了。我尝试将其放在同一文件夹中,并且图像名称是正确的,并且我尝试在浏览器中打开该图像并将其打开。这是我的代码,有人可以帮助我吗?

    if(navigator.geolocation) {
    browserSupportFlag = true;
    navigator.geolocation.getCurrentPosition(function(position) {
        var lat = position.coords.latitude;
        var lon = position.coords.longitude;
        initialLocation = new google.maps.LatLng(lat,lon);
        map.setCenter(initialLocation);
        get_json(lat,lon,function(data){
            var i, marker;
            var location;
            for (i=0; i<=data.cells.length;i++) {
                location = new google.maps.LatLng(data.cells[i].lat, data.cells);
                marker = new google.maps.Marker({
                    position: location,
                    map: map,
                    icon: "../img/icon_bts.png"
                });    
            }
        });
    }, function() {
      handleNoGeolocation(browserSupportFlag);
    });
  }

最佳答案

似乎您在添加自己的标记时不小心删除了脚本的一部分。假设您发布了文字代码片段(如果您没有发布,您确实应该),则以下行

location = new google.maps.LatLng(data.cells[i].lat, data.cells);

永远无法工作constructor of LatLng接受两个数字参数:如果 data.cells[i].lat 是数字,则 data.cells 绝对不是。我认为该行应该是这样的

location = new google.maps.LatLng(data.cells[i].lat, data.cells[i].lng);

如果这不能解决您的问题,只需在浏览器控制台中查看实际错误是什么,并将其作为问题的一部分进行报告。

关于javascript - 谷歌地图 : Can't Change Marker Icon,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33593373/

相关文章:

javascript - 使用 phonegap 检查移动应用程序中的互联网连接

javascript - 当输入的字符串到达​​特定字符时,jQuery 将焦点更改为下一个输入

java - 使用 mysql、google map 进行 Web 应用程序所需的提示,

java - Android Studio 监听器导致错误

javascript - 四舍五入数字javascript - 数学

javascript - props.onChange(e.target.value) 返回一个对象,而不是 Material ui 中 textField 中的值

javascript - SonarQube 显示正则表达式拒绝服务 (ReDoS)

javascript - IE8 中的 window.location.href 轻弹

java - 如何使用地理编码获取国家/地区名称?

java - 应用程序在调用谷歌地图 Activity 后终止