簡體   English   中英

從內部函數js獲取變量值

[英]getting variable value from inside function js

我正在嘗試獲取用戶當前位置,並將那些經度/緯度坐標傳遞給地圖。 該地圖將用作網站背景圖片。

我在此代碼上取得了部分成功:

  navigator.geolocation.getCurrentPosition(showPosition);

    function showPosition(position) {
        xss =position.coords.latitude + 
        "," + position.coords.longitude; 


  }
var position = [32.5590985,35.8415147];

現在,我希望xss的值在此變量內:

var position = [32.5590985,35.8415147];

基本上,我試圖從函數中獲取值,但沒有成功。

我應該如何從函數內部獲取值?

HTML

<div id="googlemaps"></div>

JS代碼

    navigator.geolocation.getCurrentPosition(showPosition);

    function showPosition(position) {
        xss =position.coords.latitude + 
        "," + position.coords.longitude; 


  }
var position = [32.5590985,35.8415147];

function initialize() {

    var myOptions = {
        zoom: 17,
        streetViewControl: false,
        scaleControl: false,
        mapTypeId: google.maps.MapTypeId.ROADMAP
    };

    map = new google.maps.Map(document.getElementById('googlemaps'),
        myOptions);


    latLng = new google.maps.LatLng(position[0], position[1]);

    map.setCenter(latLng);

    marker = new google.maps.Marker({
        position: latLng,
        map: map,
        draggable: false,
        animation: google.maps.Animation.DROP
    });


}
google.maps.event.addDomListener(window, 'load', initialize);

您如何從showPosition函數內部設置position變量的值?

var position;

navigator.geolocation.getCurrentPosition(showPosition);

function showPosition(pos) {
  position = [pos.coords.latitude, pos.coords.longitude];
}

假設navigator.geolocation.getCurrentPosition是異步的,這看起來像是經典的“從異步請求獲取結果”問題。 請參閱https://stackoverflow.com/a/14220323/380487了解詳細答案。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM