Javascript 使用Google Earth API和KML获取KML并作为在线3d地图嵌入
我已经写了一个KML文件,我想嵌入,以便创建一个在线三维地图。 我已经能够成功地使用Google Earth插件对文件进行文本处理并将其嵌入Blogger,我已经验证了我的代码。然而,当我尝试使用插件并将代码嵌入到我的网站时,它不起作用。我已经在我的服务器上托管了kml文件,该服务器也托管了我要将地图发布到的站点。(因此,KML文件不是来自计算机,而是托管在服务器上) 因为Google插件无法嵌入该文件,所以我试图找出原因。 我已经按照KML开发者指南的说明添加了功能(见下文)Javascript 使用Google Earth API和KML获取KML并作为在线3d地图嵌入,javascript,html,kml,google-earth-plugin,Javascript,Html,Kml,Google Earth Plugin,我已经写了一个KML文件,我想嵌入,以便创建一个在线三维地图。 我已经能够成功地使用Google Earth插件对文件进行文本处理并将其嵌入Blogger,我已经验证了我的代码。然而,当我尝试使用插件并将代码嵌入到我的网站时,它不起作用。我已经在我的服务器上托管了kml文件,该服务器也托管了我要将地图发布到的站点。(因此,KML文件不是来自计算机,而是托管在服务器上) 因为Google插件无法嵌入该文件,所以我试图找出原因。 我已经按照KML开发者指南的说明添加了功能(见下文) load('e
load('earth','1',{'other_params':'sensor=false'});
var ge=null;
函数init(){
createInstance('map3d',initCallback,failureCallback);
}
函数initCallback(pluginInstance){
ge=插件安装;
ge.getWindow().setVisibility(true);
}
函数failureCallback(){
//如果有错误,我们可以在这里做点什么
}
然而,我不确定我错过了什么。为了让GoogleAPI正常工作,是否有更多的Javascript需要添加到kml中才能正常工作?我相信我需要完善kml,包括获取kml的代码,但我已经在代码上走到了死胡同。我已经阅读了很多关于谷歌地球API和kml的问题,对于为什么这在Blogger上有效,而在我的网站上不起作用,我找不到一个明确的答案。
我对我的网站拥有权限,因此这不是问题
一些有帮助但没有明确回答我问题的问题:
任何帮助我将我的kml与Google Earth API和javascript集成的帮助都将不胜感激 代码看起来与行相距甚远
实际上,它应该在查询中包含您的api密钥,或者干脆
实际上,您可能只是得到了一个无效的API密钥错误
如果这还不能解决问题,你能发布一个链接到你的实际网站吗?编辑google.com/jsapi的代码“>帮助。我现在可以在我的测试环境中获得html文件以3D形式显示google Earth API。但是,我现在有一个不同的问题-“addsidedatabase”“不是在收集我的数据。此类数据库是否有特定的参数或文件类型?我现在的数据库是.kML文件。很高兴工作了,你也许应该考虑把我的答案标记为“接受”。至于另一个问题,你需要问一个新问题。如果你这样做了-一定要发布一个链接到一个问题的例子,或者至少包括一个代码的例子。你在你的帖子中没有提到边DB,所以我不知道你在说什么。。。
<script>
<html>
<head>
<script src="https://www.google.com/jsapi?key=YOURAPIKEY"></script>
<script>
google.load('earth','1', {'other_params':'sensor=false'});
var ge = null;
function init() {
google.earth.createInstance('map3d', initCallback, failureCallback);
}
function initCallback(pluginInstance) {
ge = pluginInstance;
ge.getWindow().setVisibility(true);
}
function failureCallback() {
// we can do something here if there's an error
}
</script>
</head>
<body onload="init()" id="body">
<div id="map3d" style="width: 500px; height: 500px;"></div>
</body>
</html>