我很困惑。我正在尝试进行小扩展(弹出),我需要连接到远程API。 如果它是标准网页,我会使用它:
<script type="text/javascript" src="http://api4.mapy.cz/loader.js"></script>
<script type="text/javascript">Loader.load();</script>
我尝试将新元素脚本包含到 head (不适用于我)。但我无法相信,没有更简单的方法......
请告诉我最好的方法。
修改
链接API加载器很好并且有效。感谢@serg。所以,我的弹出代码看起来像这样:
<script type="text/javascript" src="http://api4.mapy.cz/loader.js"></script>
<script type="text/javascript">
Loader.load();
var center = SMap.Coords.fromWGS84(16.61574, 49.20315);
</script>
定义了对象加载器,它没问题。 Loader应该加载整个API对象SMap。但是SMap是未定义的。下一步是什么?
答案 0 :(得分:1)
如果您需要向此远程API发出ajax请求,则需要在清单中的权限中列出API域:
{
"permissions": [
"http://api4.mapy.cz/"
],
}
答案 1 :(得分:0)
最后,我问Mapy.cz的开发人员,他们给出了解决方案。而不是使用导致包含额外脚本和异步加载的Loader.load() - 使用这种方式:
Loader.async = true;
Loader.load(null, null, function(){
alert(123); // it works...
// custom code calling objects etc. from API
// ...
});