Javascript + DOM - 同一页面内的链接

时间:2015-01-25 15:43:32

标签: javascript dom

我有一个包含多个条目(div)的现有页面,我循环遍历所有这些条目以获取想要的内容(标题)以创建链接列表。

在这个过程中,我为每个标题分配了一个唯一的ID,但我似乎无法获得我的链接列表" connect"特定条目。

使用Javascript:

var entries = document.getElementsByClassName('entry');
var ul = document.createElement('ul');

for (var i = 0; i < entries.length; i++) {

    var li = document.createElement('li');
    var heading = entries[i].getElementsByTagName('h2')[0];
    var addId = heading.setAttribute("id", "#entry" + i);

    var x = heading.getAttribute("id");

    var headingText = document.createTextNode(heading.firstChild.nodeValue);
    var link = document.createElement('a');

    link.setAttribute("href", x);
    link.appendChild(headingText);

    li.appendChild(link);
    ul.appendChild(li);

}

var target = document.getElementById('newdiv');
target.appendChild(ul);

我错过了什么或做错了什么?

当我将鼠标悬停在带有链接的列表上时,它们会显示所谓的链接 - 但是当我点击它时没有任何反应。如果我检查DOM,我也可以看到所有标题都被分配了一个唯一的ID。

1 个答案:

答案 0 :(得分:-1)

从中删除#:

var addId = heading.setAttribute("id", "entry" + i);//("id", "#entry" + i)

并将#添加到:

link.setAttribute("href", "#"+x);//("href",x)