如何根据Internet连接可用性切换基础层

时间:2013-03-23 05:10:56

标签: javascript google-maps openlayers

我的应用程序(html + JavaScript)使用Google地图作为基础层。我还将OSM设置为离线基础层,以便在没有互联网连接时使用。

现在我正在锁定一种让应用程序检查互联网连接的方法,如果有,则使用谷歌地图作为基础层。如果没有,那就使用OSM。

1 个答案:

答案 0 :(得分:0)

您需要一个仅在连接时才能成功的测试,因此测试方法是请求已知良好的Internet资源。如果测试失败,则表示没有连接。

由于跨域限制,XMLHttpRequest不起作用。什么可以解决跨域限制?图像!

例如:

var test = new Image();
test.onload = function() { console.log('loaded')};
test.onerror = function() { console.log('error')};
test.src = "http://ds9.ssl.berkeley.edu/imageviewer/images/images2/latest_eit_284_full.jpg";