首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何自动生成目录

如何自动生成目录
EN

Stack Overflow用户
提问于 2013-12-01 03:08:42
回答 2查看 324关注 0票数 0

我刚接触JavaScript,对于学校来说,我必须让我页面上的每个<\h1>自动生成一个"ol“,在每个"li”中都有一个链接,指向我页面上放置标题的地方,所以最后我有一个目录,每个"li“上都有链接。因此,我应该能够只写文本,而不用担心目录。有没有一种方法可以在不使用太复杂的代码的情况下做到这一点?而且最好不要太长,这样我就能理解了。

例如:

代码语言:javascript
复制
<h1 id="h1-01">Title 1<\h1>
<h1 id="h1-02">Titel 2<\h1>
<h1 id="h1-03">Titel 3<\h1>
<h1 id="h1-04">Titel 4<\h1>

让它像这样生成:

代码语言:javascript
复制
<ol>
<li><a href="h1-01">Title 1</a></li>
<li><a href="h1-02">Title 2</a></li>
<li><a href="h1-03">Title 3</a></li>
<li><a href="h1-04">Title 4</a></li>
</ol>

编辑:我不想让任何人做我所有的作业,这只是作业中很小很小的一部分。我想知道的是如何在javascript中创建一个包含列表项的有组织的列表,而不需要太复杂的代码。我已经找到了一种将每个标题文本放入变量中的方法。这就是我的东西

代码语言:javascript
复制
function generate(){
var titels = new Array();
for(var i = 1;i<10;i++){
var test = 'h1-0'+ i;
    titels[i] = document.getElementById(test).textContent;  
}
}
-->
</script>

唯一的问题是,我现在必须用这些变量做一个列表,但我在互联网上没有找到任何有用的东西,我找到的所有使用Jquery ir的东西都是针对某人的问题的。我也想要一种方法来计算我正在使用的头文件的数量,但这是另一个问题。真的有可能让代码像我写的那样直接实现吗?

像这样:

代码语言:javascript
复制
html.write("<ol>");

for(var i = 1, i<10,i++){

html.write("<il>" + titels[i] +  "<\il>");

}

html.write("<\ol>")
EN

回答 2

Stack Overflow用户

发布于 2013-12-01 03:11:51

尝试构建一个包含每个条目的id和标题的对象。在此基础上,您可以使用该对象构建几乎任何内容,包括有序列表。

当然,您可以将h1标记硬重写到列表项中,但这不是正确的方法,也不是您应该学习的东西。

票数 0
EN

Stack Overflow用户

发布于 2013-12-01 03:14:57

开始提示:你可以在jquery的帮助下做到这一点。

像这样的HTML:

代码语言:javascript
复制
 <ol id=contents></ol>

   <h1>Test</h1>
      bla bla 

      <h1> Test2 </h1>
      Ble ble ble

Jquery:

代码语言:javascript
复制
 $(document).ready(function(){
     $("h1").each(function(){
         $("#contents").append("<li>" + $(this).html() + "</li>");
     });
 });
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20304440

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档