本地文件与远程CDN文件的行为不同

时间:2018-12-23 14:49:42

标签: nativescript

我正在尝试在webview的nativescript应用程序中包含openlayers。这在大多数情况下都可以正常工作。到目前为止,我已经使用远程CDN文件在Web视图中获取openlayers。当我更改此行

<script src="https://cdn.rawgit.com/openlayers/openlayers.github.io/master/en/v5.3.0/build/ol.js"></script>

此行

<script src="./js/external/ol.js"></script>

openlayers中的图像图标不再正常工作(请参见下面的图像)。当我在笔记本电脑上的Chrome中打开html文件时,无论哪种方法都可以正常工作。为什么使用本地文件时Webview的行为有所不同?

以下是仓库的链接:https://github.com/ll9/ol-local-cdns

更新:哇,当您没有足够的Stackoverflow点时,显然不能发布嵌入式图像,因此这些图像是纯链接:

本地文件: https://raw.githubusercontent.com/ll9/ol-local-cdns/master/ol-fail.png

远程: https://raw.githubusercontent.com/ll9/ol-local-cdns/master/ol-ok.png

1 个答案:

答案 0 :(得分:2)

OpenLayers对控制按钮上的某些字符使用UTF-8(而不是使用诸如&minus;之类的html代码)。 CDN库以UTF格式保存,但是通过其他方式创建或编辑的任何CDN库都可能没有。在html标头中插入<meta charset="utf-8">标签可确保浏览器正确解释任何此类脚本,无论其来源如何。另请参见openlayers 5.1.3: "Damaged" zoom out button in quick start example?