利用JS生成博文目录及CSS定制博客

 更新时间:2016年02月10日 20:21:10   投稿:lijiao  
这篇文章主要介绍了利用JS生成博文目录及CSS定制博客的相关资料,需要的朋友可以参考下

本文实例为大家介绍了利用JS生成博文目录及CSS定制博客的方法,分享给大家供大家参考,具体内容如下

1.JS代码

  想要生成目录,许多都说需要JS修改权限,那个这里就直接进入设置页面,找到下方的联系邮箱直接发去就行了,工作人员回复的还是很快的。

  拿到权限之后,下面就是将编(搜)写(寻)的JS代码放在页脚HTML代码的方框内,然后点击保存就可以了。要注意目录的生成是几级标题,这一点可是很重要的。JS代码如下,基本没有变化,拷贝了原作者的写法,可以生成二级目录,分别为h2和h3,这点需要注意。

  综合来说,这个目录有以下几点的特点,这些也都可以在本文中看到(二级目录本博文没有使用)。

1). 可以在博文首部生成两级目录
2). 每个一级目录上方有一个回到顶部的链接
  JS代码如下。

<script language="javascript" type="text/javascript">
// 生成两级目录索引列表
function GenerateContentList()
{
 var mainContent = $('#cnblogs_post_body');
 var h2_list = $('#cnblogs_post_body h2');  //如果你的章节标题不是h2,只需要将这里的h2换掉即可

 if(mainContent.length < 1)
  return;
 
 if(h2_list.length>0)
 {
  var content = '<a name="_labelTop"></a>';
  content += '<div id="navCategory">';
  content += '<p style="font-size:18px"><b>目录</b></p>';
  content += '<ul>';
  for(var i=0; i<h2_list.length; i++)
  {
   var go_to_top = '<div style="text-align: right"><a href="#_labelTop">回到顶部</a><a name="_label' + i + '"></a></div>';
   $(h2_list[i]).before(go_to_top);
   
   var h3_list = $(h2_list[i]).nextAll("h3");
   var li3_content = '';
   for(var j=0; j<h3_list.length; j++)
   {
    var tmp = $(h3_list[j]).prevAll('h2').first();
    if(!tmp.is(h2_list[i]))
     break;
    var li3_anchor = '<a name="_label' + i + '_' + j + '"></a>';
    $(h3_list[j]).before(li3_anchor);
    li3_content += '<li><a href="#_label' + i + '_' + j + '">' + $(h3_list[j]).text() + '</a></li>';
   }
   
   var li2_content = '';
   if(li3_content.length > 0)
    li2_content = '<li><a href="#_label' + i + '">' + $(h2_list[i]).text() + '</a><ul>' + li3_content + '</ul></li>';
   else
    li2_content = '<li><a href="#_label' + i + '">' + $(h2_list[i]).text() + '</a></li>';
   content += li2_content;
  }
if($('#cnblogs_post_body').length != 0 )
  {
   $($('#cnblogs_post_body')[0]).prepend(content);
  }
 } 
}

GenerateContentList();
</script>

2. 一级标题CSS格式

  我在观察zzq同学的一些博文里面的一级标题有一个浅灰色的背景,觉得添加之后看起来很不错。在这里就借用一下该图片作为一级标题的背景,图片和CSS的说明如下。

#cnblogs_post_body h2 {
 background-repeat: no-repeat;
 background-image: url('http://xxxx');
}

以上就是本文的详细内容,希望对大家的学习有所帮助。

相关文章

  • 利用javascript如何随机生成一定位数的密码

    利用javascript如何随机生成一定位数的密码

    这篇文章主要给大家介绍了关于利用javascript如何随机生成一定位数的密码的相关资料,文中给出了详细的示例代码,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。
    2017-09-09
  • JS实现电影票选座的项目示例

    JS实现电影票选座的项目示例

    电影院选座基本上每个人都用到过,本文主要介绍了JS实现电影票选座的项目示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-04-04
  • 解决layui的form里的元素进行动态生成,验证失效的问题

    解决layui的form里的元素进行动态生成,验证失效的问题

    今天小编就为大家分享一篇解决layui的form里的元素进行动态生成,验证失效的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-09-09
  • JQuery,Extjs,YUI,Prototype,Dojo 等JS框架的区别和应用场景简述

    JQuery,Extjs,YUI,Prototype,Dojo 等JS框架的区别和应用场景简述

    随着web2.0的彪悍发展,以及浏览器端所承载的工作越来越大(在不是很影响性能的情况下,开发者都习惯把能用浏览器做的事儿都让浏览器做,以减轻服务器的压力和带宽费用等)。
    2010-04-04
  • js父页面中使用子页面的方法

    js父页面中使用子页面的方法

    这篇文章主要向大家介绍了js父页面中使用子页面的方法,即js父页面使用iframe中的函数,感兴趣的朋友可以参考一下
    2016-01-01
  • javascript实现表格信息增添与删除

    javascript实现表格信息增添与删除

    这篇文章主要为大家详细介绍了javascript实现表格信息增添与删除,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-04-04
  • js 获取radio按钮值的实例

    js 获取radio按钮值的实例

    这篇文章介绍了js 获取radio按钮值的实例,有需要的朋友可以参考一下
    2013-08-08
  • 小程序中this.setData的使用和注意事项

    小程序中this.setData的使用和注意事项

    这篇文章主要介绍了微信小程序中this.setData的使用和注意事项,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-08-08
  • Bootstrap5的断点与容器的具体使用

    Bootstrap5的断点与容器的具体使用

    本文将结合实例代码,介绍Bootstrap5的断点与容器的具体使用,文中通过示例代码介绍的非常详细,需要的朋友们下面随着小编来一起学习学习吧
    2021-07-07
  • javascript实现画不相交的圆

    javascript实现画不相交的圆

    这篇文章主要介绍了javascript实现画不相交的圆,这个也是阿里巴巴的笔试题,只不过忘记当时是不是要求必须用canvas来实现,下篇文章再写吧。
    2015-04-04

最新评论