正文 4485字数 1,129阅读

<!DOCTYPE html> <html><meta http-equiv="content-type" content="text/html; charset=UTF-8" /> <head><script src="https://cdnjs.cloudflare.com/ajax/libs/proj4js/2.8.0/proj4.js"></script> <title>地理定位示例</title> <!-- <a href="weixin://profile/gh_be8239e7bb8d">点击查看微信公众号</a> --> <script> function getLocation() { // const result = [22.763269,108.311295];//convertToCGCS2000(longitude, latitude); // // alert("您的位置坐标为:" + result[1] + ", " + result[0]); // return gggs(result[1], result[0]); // let url='https://apis.map.qq.com/tools/poimarker?type=0&marker=coord:' +result[0]+ ',' +result[1]+ ';title:111111111;addr:22222222&key=P4CQI&referer=myapp'; // location.href = url; // return showPosition(22.766076958488213); if (navigator.geolocation) { navigator.geolocation.getCurrentPosition(showPosition); } else { alert("浏览器不支持地理定位功能。"); } } function showPosition(position) { console.log(position) // var latitude = position.coords.latitude; // var longitude = position.coords.longitude; return gggs(position.coords.longitude, position.coords.latitude,(result) => { let url='https://apis.map.qq.com/tools/poimarker?type=0&marker=coord:' +result.lat+ ',' +result.lng+ ';title:111111111;addr:22222222&key=P4CLBQI&referer=myapp'; location.href = url; // console.log("回调函数中的数据:", position.coords.latitude, position.coords.longitude); // 在这里处理回调函数中的数据 }); // const result = [22.763269,108.311295];//convertToCGCS2000(longitude, latitude); // alert("您的位置坐标为:" + result[1] + ", " + result[0]); // return gggs(result[1], result[0]); let url='https://apis.map.qq.com/tools/poimarker?type=0&marker=coord:' +result[1]+ ',' +result[0]+ ';title:111111111;addr:22222222&key=P4QI&referer=myapp'; location.href = url; // window.open(url, '_blank'); // alert("您的位置坐标为:" + latitude + ", " + longitude); } // 定义坐标系 // proj4.defs("EPSG:4326", "+proj=longlat +ellps=WGS84 +datum=WGS84 +no_defs"); // proj4.defs("EPSG:4490", "+proj=longlat +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +no_defs"); // 转换函数 // function convertToCGCS2000(longitude, latitude) { // const wgs84 = proj4.defs("EPSG:4326"); // const cgcs2000 = proj4.defs("EPSG:4490"); // return proj4(wgs84, cgcs2000, [longitude, latitude]); // } // 示例 // const result = convertToCGCS2000(116.3975, 39.9087); // console.log("CGCS2000 坐标:", result); function gggs(longitude, latitude,callback) { const url = "https://api.ttxsm.com/mpweb/common/index/test_"; const headers = { "Content-Type": "application/json" }; const data = { longitude: longitude, latitude: latitude }; const request = new XMLHttpRequest(); request.open("POST", url, true); request.setRequestHeader("Content-Type", "application/json"); request.onreadystatechange = () => { if (request.readyState === 4) { if (request.status === 200) { const response = JSON.parse(request.responseText); console.log("响应数据:", response.data); callback(response.data); // 在这里处理响应数据 } else { console.error("请求失败:", request.status, request.statusText); // 在这里处理请求失败的情况 } } }; request.send(JSON.stringify(data)); } </script> </head> <body> <button onclick="getLocation()">获取位置信息</button> </body> </html>
Run code
Cut to clipboard