网站中的页面滑块

未知

我是Web编程的新手。我想构建类似flip.hr的东西使我感兴趣的是单击页面底部的导航栏时创建的滑动效果。我目前所知道的是这个,在那里你创建超链接到页面的不同部分和点击他们你被带到一个特定部分。现在,我想像这里一样创建滑动效果请指导我实现这一目标。

罗科·C·布尔扬(Roko C.Buljan)

现场演示

这非常简单,假设您有一个底部导航,并且#pages DIV第一个子菜单将具有所需的DIV页面:

<div id="pages">  
  <div id="home">HOME PAGE</div>
  <div id="about">ABOUT PAGE</div>
  <div id="products">PRODUCTS PAGE</div>
  <div id="contact">CONTACT</div> 
</div>

<table id="nav">
  <tr>
    <td><a href="#home">HOME</a></td>
    <td><a href="#about">ABOUT</a></td>
    <td><a href="#products">PRODUCTS</a></td>
    <td><a href="#contact">CONTACT</a></td>
  </tr>
</table>

所有你需要的是position:fixed#nav底部并设置absolutewidthheight 100%,您的网页:

#pages > div{
  position:absolute;
  width:100%;
  height:100%;
}
#pages div + div{ // To keep "HOME page" at 0 but push away all other pages
    left:-100%; /* note this */
}

// Style buttons and pages
#home,    a[href="#home"]    {background:#078;}
#about,   a[href="#about"]   {background:#780;}
#products,a[href="#products"]{background:#807;}
#contact, a[href="#contact"] {background:#088;}

#nav{
  position:fixed;
  bottom:0;
  width:100%;
  table-layout:fixed;
}
#nav a{
  display:block;
}

您所需要的只是jQuery的这一小部分:

jQuery(function($){

    function showPage( pageID ){
      var pID = pageID || window.location.hash;
      $('#pages > div:gt(0)').animate({left: '-100%'}, 600);
      $(pID).stop().animate({left:0}, 600);
    }
    showPage();

    $('#nav a').click(function(){
      showPage( $(this).attr('href') );
    });

});

请注意导航锚点与相关页面的锚点名称如何相同ID现在来解释一下:

$('#nav a').click(function(){

会默认#pagename在网址栏中设置一个哈希,现在我们需要的是一个函数,该函数将通过传递的参数pageIDOR(||读取目标页面ID 如果没有参数,请window.location.hash从地址栏中读取

这样一来,您可以确保如果我cpoy将页面链接粘贴到像这样的朋友:

http://www.example.com/#contact

showPage();功能触发必带他到所需的页面。

在函数内部,通过使用jQuery:gt()选择器(大于index简单地将所有其他页面作为目标,确保将首页始终保持在0像素左右

$('#pages > div:gt(0)').animate({left: '-100%'}, 600); // speaks by itself

而不是我们只定位所需的页面ID并对其进行动画处理。

  • 我们是否传递了clicked锚href属性,
  • 加载的页面hash在地址栏中是否已有一个

使用jQuery的另一种方法也很简单

$('#nav a').click(showPage);

但是在我们的函数内部,我们应该等待HASH发生变化,然后才能应用任何动画。为此,setTimeout would be fine:

function showPage(){
  setTimeout(function(){
    $('#pages > div:gt(0)').animate({left: '-100%'}, 600);
    $(window.location.hash).stop().animate({left:0}, 600);
  },100);
}
showPage();

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

同时从多个页面中删除未使用的CSS(整个网站)

来自分类Dev

纯HTML AJAX网站中的页面加载替代

来自分类Dev

在Google搜索结果中显示我网站的突出页面

来自分类Dev

html网站中的jQuery图像滑块一次加载所有图像

来自分类Dev

如何为网站中的所有页面启用https

来自分类Dev

如何在类似网站的android中制作滑块?

来自分类Dev

在Jssor滑块中停止无穷大页面

来自分类Dev

更改网站在Windows Azure中停止时的登录页面

来自分类Dev

在我的umbraco网站上的网址中包含页面ID

来自分类Dev

在“查看页面”中,andorid中未显示“图像滑块”的图像

来自分类Dev

是否可以在Github页面网站中嵌入Google地图?

来自分类Dev

从网站的后续页面中获取数据

来自分类Dev

Eleventy网站如何显示目录中的页面列表?

来自分类Dev

在Next.js网站中打开页面作为覆盖

来自分类Dev

同时从多个页面中删除未使用的CSS(整个网站)

来自分类Dev

在页面中包含页面,但在LOCAL网站上

来自分类Dev

如何处理页面中多个滑块的滑块更改事件:JqueryMobile

来自分类Dev

重写网站中的页面网址

来自分类Dev

在WordPress网站页面文件中更改HTML的位置

来自分类Dev

无法在Teamsite中创建新的网站和页面

来自分类Dev

页面中的CSS在移动网站上溢出

来自分类Dev

在PHP网站的ASPX页面中获取IP地址

来自分类Dev

网站专用的滑块库

来自分类Dev

滑块内的框div在响应页面中未对齐

来自分类Dev

如何在Hashmap的任何网站页面中存储标签的频率?

来自分类Dev

Google网站站长工具中的页面重复

来自分类Dev

在“查看页面”中,andorid中未显示“图像滑块”的图像

来自分类Dev

如何从asp网站的类中获取页面

来自分类Dev

从 iOS 更改托管在 WebKit 中的网站的页面

Related 相关文章

  1. 1

    同时从多个页面中删除未使用的CSS(整个网站)

  2. 2

    纯HTML AJAX网站中的页面加载替代

  3. 3

    在Google搜索结果中显示我网站的突出页面

  4. 4

    html网站中的jQuery图像滑块一次加载所有图像

  5. 5

    如何为网站中的所有页面启用https

  6. 6

    如何在类似网站的android中制作滑块?

  7. 7

    在Jssor滑块中停止无穷大页面

  8. 8

    更改网站在Windows Azure中停止时的登录页面

  9. 9

    在我的umbraco网站上的网址中包含页面ID

  10. 10

    在“查看页面”中,andorid中未显示“图像滑块”的图像

  11. 11

    是否可以在Github页面网站中嵌入Google地图?

  12. 12

    从网站的后续页面中获取数据

  13. 13

    Eleventy网站如何显示目录中的页面列表?

  14. 14

    在Next.js网站中打开页面作为覆盖

  15. 15

    同时从多个页面中删除未使用的CSS(整个网站)

  16. 16

    在页面中包含页面,但在LOCAL网站上

  17. 17

    如何处理页面中多个滑块的滑块更改事件:JqueryMobile

  18. 18

    重写网站中的页面网址

  19. 19

    在WordPress网站页面文件中更改HTML的位置

  20. 20

    无法在Teamsite中创建新的网站和页面

  21. 21

    页面中的CSS在移动网站上溢出

  22. 22

    在PHP网站的ASPX页面中获取IP地址

  23. 23

    网站专用的滑块库

  24. 24

    滑块内的框div在响应页面中未对齐

  25. 25

    如何在Hashmap的任何网站页面中存储标签的频率?

  26. 26

    Google网站站长工具中的页面重复

  27. 27

    在“查看页面”中,andorid中未显示“图像滑块”的图像

  28. 28

    如何从asp网站的类中获取页面

  29. 29

    从 iOS 更改托管在 WebKit 中的网站的页面

热门标签

归档