Copyright @ 2015-2024 织梦园 版权所有 Power by DedeCms
鲁ICP备15039853号-2

模板标签 TAG标签 网站地图 XML地图 今日更新 返回顶部
问题结论先说
模板不是内容坏了,而是 Google 上的 jQuery 加载失败,导致依赖 $ 的预加载层移除代码没有执行。把 jQuery 本地化,再增加一段不依赖 jQuery 的兜底隐藏逻辑即可。
部署 PbootCMS 或静态 HTML 模板后,页面整屏发白,中央只有一个持续旋转的 Bootstrap 小圆点,正文始终不出现。这个问题与模板文件是否完整通常无关,重点检查浏览器控制台和网络请求。
全屏预加载层通常使用 id="spinner",页面初始化脚本通过下面的 jQuery 代码移除 show 类:
$('#spinner').removeClass('show');
如果模板引用的是 https://ajax.googleapis.com/...jquery...,国内网络访问可能超时,随后控制台会出现 $ is not defined。移除代码没有运行,预加载层就一直盖在页面上。
| 检查位置 | 典型异常 |
|---|---|
| Console |
$ is not defined |
| Network |
ajax.googleapis.com 请求超时或被阻断 |
| Elements |
#spinner 仍保留 show 类 |
第 1 步:本地化 jQuery。 下载 jquery-3.6.4.min.js,放到模板的 js/ 目录,把 Google CDN 引用替换为:
<script src="js/jquery-3.6.4.min.js"></script>
第 2 步:增加无依赖兜底。 在 </body> 前加入以下脚本,即使其他依赖仍未就绪,也能按时移除预加载层:
<script>
document.addEventListener('DOMContentLoaded', function () {
var spinner = document.getElementById('spinner');
if (spinner) {
setTimeout(function () { spinner.classList.remove('show'); }, 900);
}
});
window.addEventListener('load', function () {
var spinner = document.getElementById('spinner');
if (spinner) spinner.classList.remove('show');
});
</script>
$ is not defined。ajax.googleapis.com。#spinner 的 show 类已被移除。