使用 jQuery 只显示一次预加载页面

乔伊·金

我正在构建一个具有加载页面的网站,该页面在页面加载时显示一个简短的加载栏动画。但是,我发现只要单击该 HTML 页面就会播放此内容。我只想在一个人第一次进入页面和刷新页面时显示加载动画!我可以设置一个 jquery 属性来只播放一次加载动画吗?

到目前为止,这是我的代码。

jQuery

var width = 100,
  perfData = window.performance.timing,
  EstimatedTime = -(perfData.loadEventEnd - perfData.navigationStart),
  time = parseInt((EstimatedTime/1000)%60)*100;

// Loadbar Animation
$(".loadbar").function() {
  $(this).animate({
    width: width + "%"
  }, time);

  setTimeout(function () {
    $('.preloaderWrap').fadeOut(300);
  }, time);

});

HTML

<section class="preloaderWrap">
    <div class="percentage"></div>
    <div class="loader">
      <div class="trackbar">
        <div class="loadbar"></div>
      </div>
      <div class="glow"></div>
    </div>
</section>

CSS

.preloaderWrap {
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  bottom: 0;
  background: #000081;
  z-index : 200;
}
.loader,.percentage{
  height: 3px;
  max-width: 200px;
  border: none;
  border-radius: 20px;
  position: absolute;
  top: -25%;
  bottom: 0;
  left: 0;
  right: 0;
  margin : auto;
}
.trackbar {
  width: 100%;
  height: 100%;
  border-radius: 20px;
  background-color: #525252;
  text-align: center;
  line-height: 3px;
  overflow: hidden;
  position: relative;
  opacity: 0.99;
}
.loadbar {
  width: 0%;
  height: 100%;
  background: #fff;
  position: absolute;
  top: 0;
  left: 0;
  overflow: hidden;
}
AAAADWBNH

您可以使用LocalStorage如果它将设置为首次加载,然后将跳过代码:

// Loadbar Animation
    var storage = window.localStorage; //set localstorage object in storage var
if(storage.getItem("loading_bar_flag") == 1){
 $('.preloaderWrap').hide();


}else{


  $(".loadbar").animate({
    width: width + "%"
  }, time);

  setTimeout(function () {
    $('.preloaderWrap').fadeOut(300);
  }, time);


   storage.setItem("loading_bar_flag",1);
 }

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何使用 jquery cookie 只显示一次预加载器?

使用 jQuery 预加载页面

jQuery一次只显示一个div

使用javascript / jquery一次打开多个页面

如何只显示一次网站预加载器

使用jQuery每3秒显示一次div

仅在第一次使用Cookie加载页面时显示加载动画?

jQuery Validate不一次显示所有错误消息,一次只显示一个

页面加载一次运行Jquery代码

在页面加载一次运行Jquery函数

jQuery ajax请求和html只显示一次数据

如何使用 JavaScript 一次只显示一项

在Angular中使用ngFor进行循环时,只显示一次相同的多个值

如何使用核心JavaScript一次只显示几张卡片?

使用实时数据,如何只显示一次对话框?

如何在使用子字符串时让 for 循环只显示一次输出

React Native expo - 如何使用 AsyncStorage 只显示一次屏幕

如果用户第一次使用jQuery访问页面,如何确定本地存储

我只需要使用 onload 函数显示一次 jquery 弹出窗口

使用jQuery每4秒一次显示3种随机颜色

jQuery使用多个选择器一次显示全部

每周一次使用JQuery Cookie显示Bootstrap模式

使用 Jquery 和 HandlebarsJS {{#each}} 助手一次显示几个 (5)

使用Jquery一次仅显示5 li(列表项)

使用Jquery定位页面上Div的第一次和第二次出现

如果值重复,如何使用mysql&codeigniter只显示一次,如何在列表的列中显示值?

使用jQuery localstorage重新加载页面并显示一条消息

如何在单击事件上使用 BaseAdapter 设置 ListView 以及如何一次只显示一个按钮?

使用jQuery的.load()加载页面