百度地图JS API获取定位信息问题

luqilina 2018-04-11 10:45:00
我把百度地图获取经纬度的JS代码 放进了一个函数内 我想让前台用户点击按钮就获取一次最新的经纬度信息。但是点击按钮以后 函数返回的是 undefined ,函数内不能retrun信息,求大神解决。









$(".click_the_sign_in").click(function(){
//百度地图API获取当前位置
alert(__this_lang_add());
})





//获取当前经纬度信息
function __this_lang_add(){

var geolocation = new BMap.Geolocation();

geolocation.getCurrentPosition(function (r){
if(this.getStatus() == BMAP_STATUS_SUCCESS){
//使用经纬度ajax查询当前位置
// last_point = "11";

return '您的位置:' + r.point.lng + ',' + r.point.lat;
}


},{enableHighAccuracy: false})

}

...全文
1252 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
75闪光雷 2018-04-17
  • 打赏
  • 举报
回复

 $(".click_the_sign_in").click(function () {       
        __this_lang_add();
    })
 
    function __this_lang_add() {
        var geolocation = new BMap.Geolocation();
        geolocation.getCurrentPosition(function (r) {
            if (this.getStatus() == BMAP_STATUS_SUCCESS) {
                callback('您的位置:' + r.point.lng + ',' + r.point.lat)////////////////////////////
            }
        }, { enableHighAccuracy: false })
    }
function callback(s){
alert(s)
}
你试试 这样行不行?
luqilina 2018-04-17
  • 打赏
  • 举报
回复
引用 6 楼 showbo 的回复:
获取经纬度都是异步完成,必须用回调来获取经纬度信息,不能return
    $(".click_the_sign_in").click(function () {       
///////////////////////////
        __this_lang_add(function (r) {
            alert(r);
        });
    })

    function __this_lang_add(callback) {///////////////////////////
        var geolocation = new BMap.Geolocation();
        geolocation.getCurrentPosition(function (r) {
            if (this.getStatus() == BMAP_STATUS_SUCCESS) {
                callback('您的位置:' + r.point.lng + ',' + r.point.lat)////////////////////////////
            }
        }, { enableHighAccuracy: false })
    }
Web开发学习资料推荐 XDomainRequest,IE8+跨域请求对象 javascript生成二维码
不行的,这个回调函数在手机上 会自动弹出网页
Go 旅城通票 2018-04-12
  • 打赏
  • 举报
回复
获取经纬度都是异步完成,必须用回调来获取经纬度信息,不能return
    $(".click_the_sign_in").click(function () {       
///////////////////////////
        __this_lang_add(function (r) {
            alert(r);
        });
    })

    function __this_lang_add(callback) {///////////////////////////
        var geolocation = new BMap.Geolocation();
        geolocation.getCurrentPosition(function (r) {
            if (this.getStatus() == BMAP_STATUS_SUCCESS) {
                callback('您的位置:' + r.point.lng + ',' + r.point.lat)////////////////////////////
            }
        }, { enableHighAccuracy: false })
    }


Web开发学习资料推荐
XDomainRequest,IE8+跨域请求对象
javascript生成二维码
weixin_39868476 2018-04-12
  • 打赏
  • 举报
回复
这样我就真的不知道了……我也是小白、你看看api吧……
luqilina 2018-04-12
  • 打赏
  • 举报
回复
引用 3 楼 weixin_39868476 的回复:
[quote=引用 2 楼 luqilina 的回复:] [quote=引用 1 楼 weixin_39868476 的回复:] 你需要的应该就是点一个按钮、输出经纬度吧、
不是,我是要做成函数 然后获取返回的经纬度值[/quote] 兄弟你不可以在前一个函数里就写成alert么、不用return行么[/quote] 我要做成函数 用定时器每秒获取实时的经纬度啊 所以要返回信息啊
weixin_39868476 2018-04-11
  • 打赏
  • 举报
回复

你需要的应该就是点一个按钮、输出经纬度吧、
weixin_39868476 2018-04-11
  • 打赏
  • 举报
回复
引用 2 楼 luqilina 的回复:
[quote=引用 1 楼 weixin_39868476 的回复:]

你需要的应该就是点一个按钮、输出经纬度吧、


不是,我是要做成函数 然后获取返回的经纬度值[/quote]

兄弟你不可以在前一个函数里就写成alert么、不用return行么
luqilina 2018-04-11
  • 打赏
  • 举报
回复
引用 1 楼 weixin_39868476 的回复:
你需要的应该就是点一个按钮、输出经纬度吧、
不是,我是要做成函数 然后获取返回的经纬度值

87,920

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧