使用Google Maps 内置的AjAX执行GXmlHttp 和 XmlHttpRequest对象,处于安全性方面的考虑,只能在地图服务所在的域中查询。
比如,地图位于http://example.com/webapp,则 GXmlHttp.request()方法只能查询位于http://example.com域内的数据,而不能查询如http://odz521.cnblogs.com 等其他域名下的数据。
使用Google Maps 内置的AjAX执行GXmlHttp 和 XmlHttpRequest对象,处于安全性方面的考虑,只能在地图服务所在的域中查询。
比如,地图位于http://example.com/webapp,则 GXmlHttp.request()方法只能查询位于http://example.com域内的数据,而不能查询如http://odz521.cnblogs.com 等其他域名下的数据。
但是,有时候我们会需要调用其他域名下的一些服务来充实我们的地图应用,这是可以动态的向叶面添加<script>标签动态加载外部域名内的数据。
下面是个例子。我们可以使用微软的开发接口,依据IP地址,获取所在位置。地址:http://maps.live.com/wifiipservice/locate.ashx
![](/Images/OutliningIndicators/ContractedBlock.gif)
Code
//动态创建DOm节点
var ss = document.createElement("script");
//设定脚本的src
ss.src="http://maps.live.com/wifiipservice/locate.ashx";
//设定脚本的类型
ss.type="text/javascript";
//添加到网页的DOM
document.documentElement.appendChild(ss);
通过这种方法就能使用外部的服务了。