Google地图设置超时更新坐标jquery javascript

Google地图设置超时更新坐标jquery javascript,javascript,jquery,google-maps,Javascript,Jquery,Google Maps,因此,我试图每五秒钟更新一次标记/用户位置,以便用户能够实时更新他们的位置。我可以获得当前位置和坐标,以正确的间隔进行更新,但我希望谷歌地图上的标记进行更新,我不知道在谷歌地图代码中我的坐标放在哪里才能进行实时更新 var x=document.getElementById("demo"); function startGeolocation() { var options; navigator.geolocation.getCurrentPositio

因此,我试图每五秒钟更新一次标记/用户位置,以便用户能够实时更新他们的位置。我可以获得当前位置和坐标,以正确的间隔进行更新,但我希望谷歌地图上的标记进行更新,我不知道在谷歌地图代码中我的坐标放在哪里才能进行实时更新

    var x=document.getElementById("demo");

    function startGeolocation() {
      var options;
      navigator.geolocation.getCurrentPosition(geoSuccess, options);
      setTimeout(startGeolocation, 1000);
    }

    function geoSuccess(position) {
      var gpsPosition = position;
      var coordinates = gpsPosition.coords;
      myLat = coordinates.latitude;
      myLong = coordinates.longitude;
      //x.innerHTML="Latitude: " + myLat + 
      //"<br>Longitude: " + myLong;
      }

     var map;

     function initialize() {
     var mapOptions = {
     zoom: 18,
     mapTypeId: google.maps.MapTypeId.ROADMAP
     };
     map = new google.maps.Map(document.getElementById('map-canvas'),
     mapOptions);

   // Try HTML5 geolocation
   if(navigator.geolocation) {
   navigator.geolocation.getCurrentPosition(function(position, options) {
   //trying to pass in myLat and myLong from the live update above
   var pos = new google.maps.LatLng(position.coords.myLat,
                                   position.coords.myLong);

  var infowindow = new google.maps.InfoWindow({
    map: map,
    position: pos,
    content: 'You are here'
  });

  map.setCenter(pos);
  }, function() {
  handleNoGeolocation(true);
 });
 } else {
// Browser doesn't support Geolocation
 handleNoGeolocation(false);
 }
 }

 function handleNoGeolocation(errorFlag) {
 if (errorFlag) {
 var content = 'Error: The Geolocation service failed.';
 } else {
 var content = 'Error: Your browser doesn\'t support geolocation.';
 }

 var options = {
 map: map,
 position: new google.maps.LatLng(60, 105),
 content: content
 };

  var infowindow = new google.maps.InfoWindow(options);
  map.setCenter(options.position);
 }

 google.maps.event.addDomListener(window, 'load', initialize);
var x=document.getElementById(“演示”);
函数startGeolocation(){
var期权;
navigator.geolocation.getCurrentPosition(geoSuccess,选项);
setTimeout(startGeolocation,1000);
}
功能geosucces(位置){
var gpsPosition=位置;
变量坐标=gpsPosition.coords;
myLat=坐标。纬度;
myLong=坐标。经度;
//x、 innerHTML=“纬度:”+myLat+
//经度:“+myLong;
}
var映射;
函数初始化(){
变量映射选项={
缩放:18,
mapTypeId:google.maps.mapTypeId.ROADMAP
};
map=new google.maps.map(document.getElementById('map-canvas'),
地图选项);
//试试HTML5地理定位
if(导航器.地理位置){
navigator.geolocation.getCurrentPosition(函数(位置,选项){
//正在尝试从上面的实时更新中传入myLat和myLong
var pos=new google.maps.LatLng(position.coords.myLat,
位置:coords.myLong);
var infowindow=new google.maps.infowindow({
地图:地图,
职位:pos,,
内容:“你在这里”
});
地图设置中心(pos);
},函数(){
手持导航(真);
});
}否则{
//浏览器不支持地理位置
手动定位(假);
}
}
函数handleNogeLocation(errorFlag){
如果(错误标志){
var content='错误:地理位置服务失败';
}否则{
var content='错误:您的浏览器不支持地理位置';
}
变量选项={
地图:地图,
职位:新google.maps.LatLng(60105),
内容:内容
};
var infowindow=new google.maps.infowindow(选项);
地图设置中心(选项位置);
}
google.maps.event.addDomListener(窗口“加载”,初始化);

您使用了错误的功能。您应该使用setInterval()

setTimeout(表达式,timeout);在超时后运行代码/函数一次

setInterval(表达式,超时);以间隔运行代码/函数,间隔时间为超时时间长度


谢谢,但这并不能解决我应该在谷歌地图Javascript代码中输入坐标的问题,有人知道吗?