在php中访问javascript变量并防止在某些事件之前加载正文
我正在创建一个应用程序,其中将获取用户的位置,并显示在地图中。还有,我正在获取的用户所在的城市。我已经创建了一个单独的master.js,在那里我放置了所有的获取代码。现在我把函数放在window.onload中,它将调用地图的函数,在地图中获取纬度和经度,并从那里调用一个函数获取用户的城市在php中访问javascript变量并防止在某些事件之前加载正文,javascript,php,jquery,google-maps,google-maps-api-3,Javascript,Php,Jquery,Google Maps,Google Maps Api 3,我正在创建一个应用程序,其中将获取用户的位置,并显示在地图中。还有,我正在获取的用户所在的城市。我已经创建了一个单独的master.js,在那里我放置了所有的获取代码。现在我把函数放在window.onload中,它将调用地图的函数,在地图中获取纬度和经度,并从那里调用一个函数获取用户的城市 function showcityname(userLatlng){ var geocoder = new google.maps.Geocoder(); geocoder.geocode(
function showcityname(userLatlng){
var geocoder = new google.maps.Geocoder();
geocoder.geocode({
"location": userLatlng
},
function(results, status) {
if (status == google.maps.GeocoderStatus.OK)
var city_name = results[0].address_components[4].long_name;//to get address
//window.location="?city_name="+ city_name;
alert(city_name);
document.cookie = "name=" + city_name ;
//fetchcity(city_name);
// window.location = "?city=" + city_name;
// else
// document.getElementById("error").innerHTML += "Unable to retrieve your address" + "<br />";
});
}
函数showcityname(userLatlng){
var geocoder=new google.maps.geocoder();
地理编码({
“位置”:userLatlng
},
功能(结果、状态){
if(status==google.maps.GeocoderStatus.OK)
var city\u name=results[0]。地址\u组件[4]。长\u name;//获取地址
//window.location=“?city_name=“+city_name;
警报(城市名称);
document.cookie=“name=”+城市名称;
//城市(城市名称);
//window.location=“?city=“+城市名称;
//否则
//document.getElementById(“错误”).innerHTML+=“无法检索您的地址”+”
”;
});
}
现在我想让应用程序像使用这个城市名称一样,查询将被激发到数据库,并在页面上显示数据库中的相关数据。问题是尸体在运到城市之前就已经上膛了。因此,相关数据不会显示在页面上。我想让city_name变量首先分配给variable,然后执行body,以便显示相关数据。我有user document.cookie,但如果用户第一次访问我的网站,它将不起作用,只有当用户刷新页面时,它才会起作用。可能是它的窗口问题。onload。。如何在城市名称出现之前停止车身装载。提前感谢。如何获取参数
userLatlng
?使用positio.coords.latitude和longitude,我将获取UseTlang。问题是我已将其设置为onload,因此它将在加载主体后执行。我想在拿到城市名称后再装上尸体我不知道你的其他代码是什么。您是否使用navigator.geolocation.getCurrentPosition()
获取userLatlng
?如果是这种情况,并且您没有使用一些标记来获取位置,那么您可以从数据库中检索所有数据,然后加载地图。是的,我正在使用navigator.geolocation.getCurrentPosition()
来获取用户的当前位置。获取用户位置之前的身体负荷。我想在获取用户所在城市后,执行主体。getCurrentPosition()
是异步的,需要一些时间才能获得结果。另外,您打给DB需要一些时间。我不知道什么是最好的管理方法。一个选项是向用户显示有限的信息,直到您获得客户位置并检查它,然后显示包含所有相关信息的地图。