百度批量坐标转换,当多个类调用不同的回调函数时,执行相同的回调函数。
2014-01-09 13:44
155 查看
百度批量坐标转换,当多个类调用不同的回调函数时,执行相同的回调函数。究竟是什么原因造成的呢,首先看看百度给我们的地址转换文件changeMore.js中transMore()方法部分
//2011-7-25 zhangying (function(){ function load_script(xyUrl, callback){ var head = document.getElementsByTagName('head')[0]; var script = document.createElement('script'); script.type = 'text/javascript'; script.src = xyUrl; //借鉴了jQuery的script跨域方法 script.onload = script.onreadystatechange = function(){ if((!this.readyState || this.readyState === "loaded" || this.readyState === "complete")){ callback && callback(); // Handle memory leak in IE script.onload = script.onreadystatechange = null; if ( head && script.parentNode ) { head.removeChild( script ); } } }; // Use insertBefore instead of appendChild to circumvent an IE6 bug. head.insertBefore( script, head.firstChild ); } function transMore(points,type,callback){ var xyUrl = "http://api.map.baidu.com/ag/coord/convert?from=" + type + "&to=4&mode=1"; var xs = []; var ys = []; var maxCnt = 20;//每次发送的最大个数 var send = function(){ var url = xyUrl + "&x=" + xs.join(",") + "&y=" + ys.join(",") + "&callback=callback"; //动态创建script标签 load_script(url); xs = []; ys = []; } for(var index in points){ if(index % maxCnt == 0 && index != 0){ send(); } xs.push(points[index].lng); ys.push(points[index].lat); if(index == points.length - 1){ send(); } } } window.BMap = window.BMap || {}; BMap.Convertor = {}; BMap.Convertor.transMore = transMore; })();请注意第29行字体部分,它是把"&callback=callback",他在这里已经把传入的方法写死了,所以当多个类调用不同的回调函数时,执行相同的回调函数callback.应该把此处的"&callback=callback"改为"&callback=”+callback然后当在调用transMore(points,type,callback)时,callback要用引号标起来,因为传入的函数名字是个字符串。transMore(points,2,”callback”)
相关文章推荐
- 房产界已上市和IPO路上的难兄难弟:房天下与房多多
- 利用百度地图提供的API做的应用
- 搜狗百度360市值齐跌:搜索引擎们陷入集体焦虑?
- 百度20年:搜索帝国的崛起、式微与重生
- 百度全面恢复网站权重,流量暴涨中
- 批量文件查找替换功能的vbs脚本
- 百度 popup.js 完美修正版非常的不错 脚本之家推荐
- asp批量修改记录的代码
- 百度空间的popup效果分析第1/3页
- 模仿百度三维地图的js数据分享
- 百度最近不收站分析,为什么不收录你的站
- 百度手写板代码JavaScript远程调用的实现(鼠标输入法)
- Java批量修改文件名的实例代码
- asp.net下百度的编码和解码
- 用python实现批量重命名文件的代码
- 做网站要主要的百度分词技术
- 网站被黑后处理方法及删除批量恶意代码的方法步骤
- perl批量查询ip归属地的方法代码
- sqlSQL数据库怎么批量为存储过程/函数授权呢?
- PHP多线程批量采集下载美女图片的实现代码(续)