javascript - Jquery - 缓慢加载页面并具有加载gif效果

标签 javascript jquery

我正在尝试使我的页面加载时具有加载效果。

关于我所说内容的一个小例子:

<a href="#" id="a1">PAGE1</a>
<a href="#" id="a2">PAGE2</a>
<a href="#" id="a3">PAGE3</a>

<div id="page1">Hey this is page 1</div>
<div id="page2">Hey this is page 2</div>
<div id="page3">Hey this is page 3</div>

Jquery:

$(document).ready(function(){

   $("#page1").hide();
   $("#page2").hide();
   $("#page3").hide();

    $("#a1").click(function(){
        $("#page1").show();
        return false;
    });

    $("#a2").click(function(){
        $("#page2").show();
        return false;
    });

    $("#a3").click(function(){
        $("#page3").show();
        return false;
    });

});

希望您明白我在说什么,是否可以使其加载速度变慢?我的意思是平滑。

最佳答案

因为您使用的是 jQuery,所以您可以使用 .fadeToggle() 而不是 show() 检查下面的示例。

注释:

  • 如果您不想在可以使用的页面的显示/隐藏之间切换,那么最好使用一个事件,而不是为每个新链接重复相同的代码fadeIn()

  • 您可以使用逗号分隔符在多个选择器上触发相同的方法:

    $("#page1,#page2,#page3").hide();
    

希望这有帮助。

<小时/>

$(function(){
  $("#page1,#page2,#page3,#loading").hide();

  $("a").click(function(e){
    e.preventDefault();
    $('#loading').show();

    switch($(this).attr('id')){
      case 'a1':
        $("#page1").fadeToggle("slow",function(){ $('#loading').hide() });
      break;
      case 'a2':
        $("#page2").fadeToggle(2000,function(){ $('#loading').hide() });
      break;
      case 'a3':
        $("#page3").fadeToggle("fast",function(){ $('#loading').hide() });
      break;
    }
  });
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<img id="loading" src="http://www.tbaf.org.tw/event/2016safe/imgs/loader1.gif" width="250">
<a href="#" id="a1">PAGE1</a>
<a href="#" id="a2">PAGE2</a>
<a href="#" id="a3">PAGE3</a>

<div id="page1">Hey this is page 1</div>
<div id="page2">Hey this is page 2</div>
<div id="page3">Hey this is page 3</div>

关于javascript - Jquery - 缓慢加载页面并具有加载gif效果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36389206/

相关文章:

javascript高亮显示多行

javascript - 滑动下划线边框以与事件网页配合使用

javascript - 是否可以使用 JavaScript/CSS 动态编辑图像,使它们的背景变得透明?

jquery - 如何在页面刷新时随机化 <li> 元素?

javascript - 视差滚动不适用于移动 css

javascript - jQuery 插件 cycle2 标题在幻灯片放映期间没有上下动画

javascript - 如何在JS中重新定义对象方法?

javascript - 映射数组值时使用异步等待

javascript - 使用标签和跨度的表

javascript - 如何将数据从客户端传输到服务器(静默)?