Laravel项目全站接入ajax

2023-04-17 0 617

pajx:
在不刷新页面的状态下改变url地址

Laravel项目全站接入ajax

<script src=\"https://cdn.bootcss.com/jquery.pjax/2.0.1/jquery.pjax.min.js\"></script>
//定义加载区域
$(document).pjax(\'a\', \'body\');
//定义pjax有效时间,超过这个时间会整页刷新
$.pjax.defaults.timeout = 12000;
//显示加载动画
$(document).on(\'pjax:click\', function () {
  $(\"#loading\").show();
});
//隐藏加载动画
$(document).on(\'pjax:end\', function () {
  $(\"#loading\").hide();
});
#loading {
  background-color: rgba(238, 238, 238, 0.6);
  display: none;
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  z-index: 2000;
  bottom: 0;
  padding-top: 10%;
}
#loading .spinner {
  margin: 100px auto;
  width: 50px;
  height: 60px;
  text-align: center;
  font-size: 10px;
}
#loading .spinner > div {
  background-color: rgba(0, 0, 0, 0.2);
  height: 100%;
  width: 6px;
  display: inline-block;
  -webkit-animation: stretchdelay 1.2s infinite ease-in-out;
  animation: stretchdelay 1.2s infinite ease-in-out;
}
#loading .spinner .rect2 {
  -webkit-animation-delay: -1.1s;
  animation-delay: -1.1s;
}
#loading .spinner .rect3 {
  -webkit-animation-delay: -1s;
  animation-delay: -1s;
}
#loading .spinner .rect4 {
  -webkit-animation-delay: -0.9s;
  animation-delay: -0.9s;
}
#loading .spinner .rect5 {
  -webkit-animation-delay: -0.8s;
  animation-delay: -0.8s;
}
@-webkit-keyframes stretchdelay {
  0%,
  40%,
  100% {
    -webkit-transform: scaleY(0.4);
  }
  20% {
    -webkit-transform: scaleY(1);
  }
}
@keyframes stretchdelay {
  0%,
  40%,
  100% {
    transform: scaleY(0.4);
    -webkit-transform: scaleY(0.4);
  }
  20% {
    transform: scaleY(1);
    -webkit-transform: scaleY(1);
  }
}

Laravel项目全站接入ajax

composer require spatie/laravel-pjax

composer引入laravel-pjax
在 app/Http/Kernel.php 文件添加

protected $middleware = [
    ...
    SpatiePjaxMiddlewareFilterIfPjax::class,
];
    <div id=\"loading\">
        <div class=\"spinner\">
            <div class=\"rect1\"></div>
            <div class=\"rect2\"></div>
            <div class=\"rect3\"></div>
            <div class=\"rect4\"></div>
            <div class=\"rect5\"></div>
        </div>
    </div>

记得给加上动画html

相关文章

发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务