为啥会重复请求didUpdateBMKUserLocation这个方法
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了为啥会重复请求didUpdateBMKUserLocation这个方法相关的知识,希望对你有一定的参考价值。
参考技术A原因:
定位多次回调,是因为系统定位的时候,可能存在偏差。例如系统在处理位置信息的时候,有可能使用GPS位置信息,也有可能使用基站位置信息,也有可能使用网络位置信息。按照信号强度以及其它数据综合处理得到位置结果,这个结果可能因外界环境的改变而改变,例如天气、信号干扰、网络波动。这些都是可随时变化的因素,故存在多次回调。
思路:
通常来说,取第一个回调的结果就可以了,因为你取位置,什么时候取,就用什么时候的结果,即使这个结果存在偏差。
如果要做精确位置,你可以尝试用数组存放你1秒(可根据具体业务制定,例如存在快速变化位置的可能,则可设置得更小)内获得的所有位置数据,然后对这个数据求均值,则这个均值是最接近真实位置的值了。
还有一种方法,就是新值覆盖旧值。例如最大等待1秒,如果这1秒之内有新值覆盖旧值,则使用新值并继续等待。当1秒之内没有新值,则使用获得的旧值,那么这个旧值则为当前位置值。
百度地图定位类开放了一个叫updating的属性,然而在位置更新的时候,此属性一直为YES,并不能作为获取到准确位置的判断。
结果:
故,只需要取第一次的回调结果即可,其它回调直接忽视。
为啥我的 html 请求在 javascript 中不起作用 [重复]
【中文标题】为啥我的 html 请求在 javascript 中不起作用 [重复]【英文标题】:Why is my html request not working in javascript [duplicate]为什么我的 html 请求在 javascript 中不起作用 [重复] 【发布时间】:2014-03-25 12:42:16 【问题描述】:我是 html 和 javascript 的新手,需要一些帮助。
所以我有一个html
页面,上面有一个按钮。当我单击该按钮时,我希望它加载xml document
(并最终从中显示某种信息)。我不知道我没有正确加载文件。如果我注释掉 xhttp.send;
它将运行。所以xttp.send
所在的行就是我遇到问题的地方。
注意事项:我正在写notepad++
,.xml
文件与我的.html
文件在同一目录中,我使用chrome
作为浏览器。
提前致谢
var xhttp;
function functionName()
xhttp=new XMLHttpRequest();
xhttp.open("GET","test.xml", false);
xhttp.send();
//xmlDoc=xmlhttp.responseXML;
//var temp = xmlDoc.getElementsByTagName("alerts");
alert("something");
</script>
【问题讨论】:
这应该会有所帮助:developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest/… @MattBall - 请注意,您链接的问题使用异步请求,而此问题尝试同步请求。虽然异步通常更好,但我不确定 dup 是否是正确的......(使用 jQuery.ajax 可能更容易,但同样不是问题中所问的) 如果您从本地文件系统加载页面,Chrome 不会让您向本地文件发出 Ajax 请求,除非您以标志开头(我认为)。见***.com/q/16585514/218196 @AlexeiLevenkov 确实! 那么,发生了什么?你确定这个函数被调用了吗? html 是什么样子的? 【参考方案1】:您必须为您的 xml 资源提供完整的 http 路径。
【讨论】:
以上是关于为啥会重复请求didUpdateBMKUserLocation这个方法的主要内容,如果未能解决你的问题,请参考以下文章
为啥我的 html 请求在 javascript 中不起作用 [重复]
即使我使用 API Post 请求发送数据,为啥 req 正文是 [重复]
为啥Angular将成功的http post请求的结果显示为“未定义” [重复]