学做网站培训课程介绍

当前位置:

怎么实现网站文章自动生成目录列表(锚链接)

如果网站上一篇文章比较长的情况下 ,为了方便用户浏览自己所需要的部分,可以在文章的顶部添加一个目录列表,每一个列表项都是一个锚链接,点击后直接跳到指定位置。效果如下图:

怎么实现这种文章内容自动生成目录列表呢?我们主要使用JQUERY来实现。

第一步:引入JQUERY;

第二步:在目录列表位置,添加一个空的UL;


<ul  id="toc-lists"></ul>

第三步:在主体内容最外面,放上一个ID类名:


 id="leirongdiv";

第四步:在网页最底部,放上以下的JS代码来实现自动生成列表,并且可以锚点平滑滚动;


<script>
var modian = [];
var h2lr = [];
for(var i=0;i<$('#leirongdiv h2').length;i++){
modian.push($('#leirongdiv h2:nth-of-type('+(i+1)+')').attr('id'));
h2lr.push($('#leirongdiv h2:nth-of-type('+(i+1)+')').text());
}
for(var r=0;r< modian.length;r++){
var lis = '<li><a href="#'+modian[r]+'">'+h2lr[r]+'</a></li>';
$('#toc-lists').append(lis);
}
</script>
<script type="text/javascript">
//锚点平滑滚动
$(function(){
  $('a[href*=#],area[href*=#]').click(function() {
    if (location.pathname.replace(/^//, '') == this.pathname.replace(/^//, '') && location.hostname == this.hostname) {
      var $target = $(this.hash);
      $target = $target.length && $target || $('[name=' + this.hash.slice(1) + ']');
      if ($target.length) {
        var targetOffset = $target.offset().top;
        $('html,body').animate({
          scrollTop: targetOffset
        },
        1000);
        return false;
      }
    }
  });
})
</script>

第四步:在编辑文章内容时,使用以下的标题结构;


<h2 id="div1">栏目标题栏目标题</h2>

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注

相关教程

  • WORDPRESS 网站调用评论框,我们会使用以下的函数进行直接调用:<?phpcomments_template();?>但是这个函数只能在文章页或者PAG
  • 问:老师,我做了一个视频类的网站,是一个自适应的网站,网站上有很多视频,但是视频的尺寸我控制不好,特别是高度,我是在PC端设置高度为480,手机
  • 老师,你好,我自己做了一个Discuz论坛,前几天更换了一个新域名,但是点击后台的【网站首页】却仍然跳转到原来的域名,请问这是怎么回事呢?是不是
  • 论坛老师好,我不是你们的学员,但请教你们一个问题,我想做一个按钮,左边二个角是圆角,右边二个角是直角,请问怎么写出这样的效果呢?麻烦论坛老
  • 老师您好,我问一下,我现在自己在用PHP做一个网站,现在有一个功能有点问题,就是我用PHP for 循环去循环一个数组,我现在想让这个数组里的二个变量
  • 老师,看到课程里讲JQUERY点击反复变化的效果,常用到toggle(),用于DIV的显示与隐藏。那么能不能实现点击添加Class再点击去除Class呢?可以的。JQU
  • 问:老师,我现在有一个客户找我做一个网站,网站上要用到tab嵌套tab,就是那种双重Tab的效果,该怎么写这样的功能呢?答:tab嵌套tab在有些网站里比
  • 个人建网站需要掌握哪些知识呢?对于一些新手想学习建网站,会有这样的疑问,我想学习建网站,是不是所有的知识都要学习呢?今天学建站网就来针对这个
  • 老师,我自己用WordPress建了一个网站,现在有一个问题,就是网站首页是正常的,但是其它页面都是404,打不开,我检查了网站主机都是正常的,内容也
  • 老师,我自己正在做一个网站,有一个功能需要先获取当前网页URL地址才可以实现,请问怎么实现获取当前网页URL地址呢?在网站制作过程中,有些功能需