点击只触发一次请求事件:
下面是个单击获取经纬度的Demo,简要截图如下:
简要代码如下:
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title></title> </head> <body> <input type="button" value="点击获取地理信息" id="btnClick"/><br/> <textarea style="width:400px;height:400px;border:1px solid blue;" id="t1"></textarea> </body> </html> <script type="text/javascript"> //基于地理信息的应用 var btnClick=document.getElementById("btnClick"); var t1=document.getElementById("t1"); btnClick.onclick=function(){ //单次定位请求 ,及点击一次请求一次 navigator.geolocation.getCurrentPosition(function(position){ t1.value+="经度:"+position.coords.longitude+":纬度:"+position.coords.latitude+"\n";//获取经度信息 },function(err){ //获得失败编号 0:不包含其它编号中的错 1:用户拒绝浏览器获取位置信息 2.尝试获取用户信息但失败了 3.timeout超时 alert(err.code);//用户拒绝浏览器获取信息,弹出1 },{ //数据收集:JSON的形式 enableHighAcuracy:true, //设置更精确的查找 timeout:5000, //设置请求超时的时间为5秒钟 maximumAge:5000 //设置位置可以缓存的最大时间为5秒钟 }); } </script>