为了加载一些 geojson 数据,我需要在外部域上获取脚本,比如http://www.stat.ucla.edu/~jeroen/files/la_county_simplified.min.json
. 我无法控制这个脚本的内容;我只知道 url,以及我感兴趣的脚本中定义的对象的名称。脚本的虚拟版本如下所示:
var my_data = {"foo" : 123, "bar" : 456}
现在在我的应用程序中,我想my_data
从它的 URL 动态加载对象。因为是跨域的,所以不能用ajax。也不完全jsonp
是,因为我的脚本定义了一个对象,而不是一个函数。一种方法是将其简单地作为 a 插入<script>
当前文档的头部。但是,我想避免可能的副作用。
什么是更清洁的解决方案?我正在考虑创建一个<iframe>
然后在 iframe 中插入<script>
标签,并在 iframe 加载后提取对象。但是我不确定这是一个可靠的方法,可以跨浏览器工作(特别是绑定回调以在 iframe 中加载脚本后提取对象)。
是否有一些库或标准解决方案可以在干净的页面中加载脚本,并将特定对象的副本提取到主页?我已经依赖于 jQuery,所以这很好。