我遇到了一个特殊问题。在我的“单页”网站上,我将内容拆分为几个div,例如“议程”,“事件”,“位置”等。我需要一个从该ID生成导航的JavaScript,如下所示:
<div class="navi">
<ul>
<li><a >Item 1 (Suppost to be Agenda)</a></li>
<li><a >Item 2 (Suppost to be Event)</a></li>
<li><a >Item 3 (Suppost to be Location)</a></li>
</ul>
</div>
<div id="content">
<div id="Agenda">
Content item 1
</div>
<div id="Event">
Content item 2
</div>
<div id="Location">
Content item 3
</div>
</div>
但我不知道如何。
答案 0 :(得分:2)
您可以使用以下内容;
$("#content div").each(function() {
$(".navi ul").append('<li><a href="#'+ $(this).attr("id") + '">' + $(this).attr("id") + '</a></li>');
});
以下是一个有效的演示: jsfiddle
答案 1 :(得分:0)
这很简单:
我已经使用vanilla JavaScript示例更新了您的Fiddle,但您可以了解这在jQuery中的工作原理。
这是JavaScript:
var menu = document.getElementById("nav");
var contentContainer = document.getElementById("content")
var contentEntries = contentContainer.children;
for(var i = 0; i < contentEntries.length; i++){
var menuEntry = document.createElement("li");
var link = document.createElement("a");
link.innerText = contentEntries[i].id;
menuEntry.appendChild(link);
menu.appendChild(menuEntry);
}