我有一个简单的网页,我已经嵌入了一个基本的传单地图。当我尝试通过我的GitHub Pages网站发布时,传单地图将不会呈现(其他一切都很好)。
GitHub Pages规范说它支持JS,这不应该是一个问题,因为它是一个API。我试图使用下载的传单版本(.css和.js文件上传到我的gh-pages存储库),但仍然没有。
任何人都有任何想法为什么这不起作用?这就是GitHub Pages表示它将托管“静态”网页(没有API,没有JS交互性)的意思吗?
答案 0 :(得分:3)
修改强>
现在宣传单officially recommends unpkg
支持https
的CDN:
<link rel="stylesheet" href="https://unpkg.com/leaflet@0.7.7/dist/leaflet.css" />
<script src="https://unpkg.com/leaflet@0.7.7/dist/leaflet.js"></script>
或
<link rel="stylesheet" href="https://unpkg.com/leaflet@1.3.3/dist/leaflet.css" />
<script src="https://unpkg.com/leaflet@1.3.3/dist/leaflet.js"></script>
原始回答
您可能只是面临“混合内容”问题(来自HTTP
协议的资源试图加载到通过安全HTTPS
协议访问的网页上)。
请注意最近网站的{GITHub页面now enforce HTTPS
protocol:
2016年6月15日之后创建并使用
github.io
域名的GitHub页面网站需要执行HTTPS。
这意味着即使您手动输入http://my-site.github.io
,您也会自动重定向到https://my-site.github.io
。
官方传单CDN不幸地支持HTTPS
协议。
但是,您可以使用支持HTTPS
的备用CDN,例如cdnjs:
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/leaflet/1.0.0-rc.1/leaflet.css" />
<script src="https://cdnjs.cloudflare.com/ajax/libs/leaflet/1.0.0-rc.1/leaflet.js"></script>
但是,当您尝试使用本地(下载)脚本时,它仍然无法正常工作?
注意:强>
仅为“静态”网页提供服务的GitHub页面意味着它们无法在服务器端动态生成,例如通过PHP。但是,您可以自由使用客户端代码(JavaScript)。例如,Leaflet官方网站实际上是在GitHub上托管的。