jquery - 使用 jQuery 自动编号标题 H1-H6

标签 jquery html automation html-heading

我读了related帖子,但没有找到适用于 IE 的解决方案,因此我请求针对此问题的 jQuery 解决方案:

我有一些像这样的嵌套分层标题

<h1> heading 1</h1> 
<h2> subheading 1</h2>
<h1> heading 2</h1> 
<h2> subheading 1</h2>
<h2> subheading 2</h2>

我需要像这样的一些自动标题输出:

1. heading 1
1.2 subheading 1
2. heading 2
2.1. subheading 1
2.2. subheading 2

有没有办法在 IE6+ 中使用 jQuery 或类似工具来实现这一点?

最佳答案

这是我的看法:

var segments = [];

$(':header').each(function() { 

  var level = parseInt(this.nodeName.substring(1), 10);

  if(segments.length == level) {
    // from Hn to another Hn, just increment the last segment
    segments[level-1]++;
  } else if(segments.length > level) {
    // from Hn to Hn-x, slice off the last x segments, and increment the last of the remaining
    segments = segments.slice(0, level);
    segments[level-1]++;
  } else if(segments.length < level) {
    // from Hn to Hn+x, (should always be Hn+1, but I'm doing some error checks anyway)
    // add '1' x times.
    for(var i = 0; i < (level-segments.length); i++) {
      segments.push(1);
    }
  }

  $(this).text(segments.join('.') + '. ' + $(this).text());

});

Working example on all levels, H1 - H6

关于jquery - 使用 jQuery 自动编号标题 H1-H6,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5127017/

相关文章:

automation - 使用 OpenOffice.org 基本宏以编程方式将 *.odt 文件转换为 MS Word *.doc 文件

python - 如何使用 python 在游戏中移动光标(例如 : First shooter shooting game)

jquery - 在动画渐变背景上实现 jquery fancybox

javascript - 在 ajax 调用后为 jquery 每个函数添加延迟

javascript - 如何在打开下拉菜单时隐藏当前选定的选项

javascript - 如何克隆 jQuery 对象并将其添加为同级对象?

javascript - 裁剪不规则形状的图像并拉伸(stretch)它

javascript - jquery中如何删除空元素?

javascript - 当使用 id 而不是值单击单选按钮时,jQuery 显示 div

java - 弹出框-如何在selenium中处理它