如何使用javascript更新位置而不刷新谷歌地图

时间:2016-11-08 16:29:08

标签: javascript google-maps

我正在开发一种可以实时跟踪车辆的应用程序。

我在这个应用程序的最后但我遇到了问题。如果不重新加载地图,我无法更新我的标记 我尝试使用settimeout()..但重新加载地图

这是我的代码,谢谢你的帮助。

  function loadMap() {
            var geocoder = new google.maps.Geocoder();
            var infowindow = new google.maps.InfoWindow;
            var ab = contactsName;
            var bc = contactsNumber;
            queryObject.find({
                success: function(results) {
                    for (var i = 0; i < results.length; i++) {
                        contactsName = results[i].get("lat");
                        contactsNumber = results[i].get("long");
                    }
                },
                error: function(error) {
                    alert("Error: " + error.code + " " + error.message);
                }
            });
            var mapOptions = {
                center: new google.maps.LatLng(ab, bc),
                zoom: 16
            }
            var map = new google.maps.Map(document.getElementById("sample"), mapOptions);
            var marker = new google.maps.Marker({
                position: new google.maps.LatLng(ab, bc),
                map: map,
                draggable: true,
                icon: 'http://findicons.com/files/icons/1496/world_of_copland_2/32/school_bus.png',
            });
            setTimeout(function() {
                loadMap();
            }, 10000);

        }

1 个答案:

答案 0 :(得分:0)

要更改标记位置,请确保它是全局的或存储为类属性,然后您可以使用类似

的内容更新其位置
marker.setPosition(nweLocation);

有关详细信息,请参阅this