jquery等待执行异步调用

时间:2015-05-15 07:56:47

标签: javascript settimeout elevation

我正在尝试获取google maps api中点击的高程数据。 以下是我实施的内容。



function getElevationtimeer(lat, lng) {
            returnvaluetime = "";
            elevationpoint = "";
            getElevation(lat, lng);
            setTimeout(ajax, 3000);
            return returnvaluetime;
}

function getElevation(lat, lng) {
            var locations = [];
            elevator = new google.maps.ElevationService();
            var clickedLocation = new google.maps.LatLng(lat, lng);
            locations.push(clickedLocation);
            var positionalRequest = {
                'locations': locations
            }
            elevator.getElevationForLocations(positionalRequest, function (results, status) {
                if (status == google.maps.ElevationStatus.OK) {
                    if (results[0]) {
                        elevationpoint = results[0].elevation;
                    } else {
                    }
                } else {
                }
            })
            return returnvaluetime;
        }

function ajax() {
            if (elevationpoint != "")
                returnvaluetime = elevationpoint;
        }




最初我正在调用getElevationtimeer方法。 从那以后我调用了第一个getElevation方法,在其中我找到了点击位置的高程。 之后我调用ajax方法,在其中我将高程值分配给我想从main方法返回的变量。

我可以理解上面的代码出了什么问题。 请帮助我实现获得提升的逻辑的可能方法。

0 个答案:

没有答案