当前位置: 首页 > 知识库问答 >
问题:

页面挂在“预加载器”中

呼延晋
2023-03-14

我正在尝试开发一个用户注册和登录系统

加载页面时,挂在预加载器中,不显示内容。

在我的Thymeleaf页面中注释了预加载程序部分后,我加载了该页面,工作正常。

我找不到为什么会发生这种情况,一点帮助将不胜感激。谢谢!

HTML代码段:

        <!-- Page Preloder -->
    
    <div id="preloder">
        <div class="loader"></div>
    </div> 

CSS代码段:

/* Preloder */

#preloder {
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: 999999;
    background: #000;
}

.loader {
    width: 40px;
    height: 40px;
    position: absolute;
    top: 50%;
    left: 50%;
    margin-top: -13px;
    margin-left: -13px;
    border-radius: 60px;
    animation: loader 0.8s linear infinite;
    -webkit-animation: loader 0.8s linear infinite;
}

@keyframes loader {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
        border: 4px solid #f44336;
        border-left-color: transparent;
    }
    50% {
        -webkit-transform: rotate(180deg);
        transform: rotate(180deg);
        border: 4px solid #673ab7;
        border-left-color: transparent;
    }
    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
        border: 4px solid #f44336;
        border-left-color: transparent;
    }
}

@-webkit-keyframes loader {
    0% {
        -webkit-transform: rotate(0deg);
        border: 4px solid #f44336;
        border-left-color: transparent;
    }
    50% {
        -webkit-transform: rotate(180deg);
        border: 4px solid #673ab7;
        border-left-color: transparent;
    }
    100% {
        -webkit-transform: rotate(360deg);
        border: 4px solid #f44336;
        border-left-color: transparent;
    }
}

.elements-section {
    padding-top: 100px;
}

.el-title {
    margin-bottom: 75px;
}

.element {
    margin-bottom: 100px;
}

.element:last-child {
    margin-bottom: 0;
}

js 代码段:

$(window).on('load', function() {
    /*------------------
        Preloder
    --------------------*/
    $(".loader").fadeOut();
    $("#preloder").delay(400).fadeOut("slow");

});

共有1个答案

苏宏逸
2023-03-14

您需要使用jQuery DOM ready函数来确保您< code >。加载器在窗口< code >加载功能时< code >隐藏,期望事件被< code >触发,在您的情况下没有事件,即< code >点击或< code >改变。

这将确保当< code>DOM准备就绪时,您的< code >脚本正在执行。

现场演示:

$('document').ready(function() {
  /*------------------
      Preloder
  --------------------*/
  $(".loader").fadeOut();
  $("#preloder").delay(400).fadeOut("slow");
});
/* Preloder */

#preloder {
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 999999;
  background: #000;
}

.loader {
  width: 40px;
  height: 40px;
  position: absolute;
  top: 50%;
  left: 50%;
  margin-top: -13px;
  margin-left: -13px;
  border-radius: 60px;
  animation: loader 0.8s linear infinite;
  -webkit-animation: loader 0.8s linear infinite;
}

@keyframes loader {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
    border: 4px solid #f44336;
    border-left-color: transparent;
  }
  50% {
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
    border: 4px solid #673ab7;
    border-left-color: transparent;
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
    border: 4px solid #f44336;
    border-left-color: transparent;
  }
}

@-webkit-keyframes loader {
  0% {
    -webkit-transform: rotate(0deg);
    border: 4px solid #f44336;
    border-left-color: transparent;
  }
  50% {
    -webkit-transform: rotate(180deg);
    border: 4px solid #673ab7;
    border-left-color: transparent;
  }
  100% {
    -webkit-transform: rotate(360deg);
    border: 4px solid #f44336;
    border-left-color: transparent;
  }
}

.elements-section {
  padding-top: 100px;
}

.el-title {
  margin-bottom: 75px;
}

.element {
  margin-bottom: 100px;
}

.element:last-child {
  margin-bottom: 0;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div id="preloder">
  <div class="loader"></div>
</div>
 类似资料:
  • ⚠️ 只有生产环境才有此功能 ⚠️ Examples Prefetching Next.js 有允许你预加载页面的 API。 用 Next.js 服务端渲染你的页面,可以达到所有你应用里所有未来会跳转的路径即时响应,有效的应用 Next.js,可以通过预加载应用程序的功能,最大程度的初始化网站性能。查看更多. Next.js 的预加载功能只预加载 JS 代码。当页面渲染时,你可能需要等待数据请求。

  • 有时,在我用Selenium2.41完成的测试中,在Firefox28测试中,执行挂起等待页面加载。 还要设置以下属性:

  • 描述 (Description) Framework7中的预加载器由可缩放矢量图形(SVG)制成,并使用CSS动画,这使其易于调整大小。 预加载器有两种颜色 - 默认为浅色背景 另一个是黑暗的背景 您可以在HTML中使用preloader类,如下所示 - 例子 (Example) 以下示例演示了Framework7中预加载器的使用 - <!DOCTYPE html> <html> <head

  • 问题内容: 我有一个PHP include,它需要一段时间才能加载,因为PHP必须获取很多数据。我不想放慢整个网页的加载,以等待包含此内容,那么如何使用ajax加载该包含内容呢?我不希望通过单击按钮来触发Ajax,而只是希望它在页面加载时加载包含,因此,如果您查看下面的示例,则会在显示内含代码的同时显示“更多HTML内容”。 php仍在加载中。 问题答案: 如果您使用的是jQuery,则可以使用他

  • 问题内容: 在Java 8中,我可以使用以下方法使用预加载器启动JavaFX应用程序: 我更喜欢从上面的代码开始,而不是使用部署配置,因为我不希望图形界面在每次启动应用程序时都启动,而只是在一些计算出应用程序应该在其中运行的代码之后才启动GUI模式。 我使用的是“ com.sun.javafx.application.LauncherImpl”类,但显然在Java 9中,所有以“ com.sun”

  • 问题内容: 在我的index.html页面中,我想在加载应用程序时加载一个单独的Ajax页面,最好的方法是什么?这是我的索引代码: 在这里加载ajax子页面..... 子页面就是: 内容.............. 谢谢。 问题答案: 使用JavaScript可以做到这一点。您必须在页面加载时执行此操作。这是jQuery中的示例。