使用Javascript将动态链接嵌套到动态列表中

德鲁·阿克曼(Drew Ackerman)

我试图创建一个创建动态菜单的函数。我已经能够创建“ a”标签并为他们提供单独的链接,同时还为其分配ID。问题是我无法在CSS应用其规则的列表中获得链接。

function write_navBar() {
var links = ["intro.html", "art.html", "portfolio.html", "guides.html", "about_me.html"]
var ul = document.createElement("ul");
document.getElementById("mainNav").appendChild(ul);
for (i = 0 ; i < links.length ; i++) {
    var ul = document.createElement("ul");
    var a = document.createElement("a");
    var text = document.createTextNode(links[i]);

    a.href = links[i];
    a.id = "mainNav";
    a.text = links[i];

    document.getElementById("mainNav").appendChild(a);
                                    }
}

在保留javascript的同时清理代码的任何建议将不胜感激。并且还可以理解语法的任何解释。

谢谢!

米奇·康纳(Mitch Conner)
function write_navBar() {
  var links = ["intro.html", "art.html", "portfolio.html", "guides.html", "about_me.html"];
  var ul = document.createElement("ul");
  var li, a, text;
  for (var i = 0, l = links.length; i < l; ++i) {
    li = document.createElement('li');
    a  = document.createElement('a');
    text = document.createTextNode(links[i]);

    a.href = links[i];
    a.setAttribute("class", "some-class-name");
    a.appendChild(text);
    li.appendChild(a);
    ul.appendChild(li);

  }
  document.querySelector("#mainNav").appendChild(ul);
}

•在getElementById上使用querySelector。两者都可以,但是querySelector的性能有所提高。该API接近jQuery,并且大多数(如果不是全部)较新的浏览器都支持querySelector。

•由于性能原因,在再次添加元素之后追加ul。

•使用LI来固定链接元素,第二个UL不会做您想要的。

•不要重用id,您想要使用的是一个类,它们基本上做同样的事情,但是javascript对待id和类的方式有所不同。如果那不符合您的需求,请尝试在CSS中使用复合CSS选择器,例如:#mainNav ul li a { /* styles here */ }

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在Python中嵌套到动态深度

来自分类Dev

使用杰克逊将嵌套的JSON字符串动态嵌套到Java对象

来自分类Dev

将列表嵌套到字典中

来自分类Dev

使用jQuery将列表嵌套到平面列表

来自分类Dev

使用JavaScript的动态链接

来自分类Dev

将列表元素嵌套到Python中的数据框

来自分类Dev

Python将字典嵌套到reStructuredText项目符号列表中

来自分类Dev

使用Javascript从JSON数据动态嵌套ul \ li列表

来自分类Dev

Javascript承诺中的动态链接

来自分类Dev

使用列表中的字符串动态创建嵌套字典

来自分类Dev

将列表嵌套到 Pandas DataFrame

来自分类Dev

动态将数据写入JavaScript中的嵌套对象

来自分类Dev

如何将列表嵌套到给定列表中大小的子列表中?

来自分类Dev

将javascript对象嵌套到HTML表

来自分类Dev

嵌套到映射为动态密钥的Jackson的JSON映射

来自分类Dev

使用jQuery从JSON创建动态嵌套列表

来自分类Dev

如何使用jQuery动态创建嵌套列表?

来自分类Dev

将元数据嵌套到JSON中

来自分类Dev

将ListView嵌套到DropdownMenu中

来自分类Dev

将字典嵌套到数据框中

来自分类Dev

将xml嵌套到表中

来自分类Dev

使用javascript将表单中的动态列表对象转换为JSON

来自分类Dev

使用Javascript动态将div移到列表元素上方

来自分类Dev

R-将列值嵌套到向量的单个列(类型列表)中

来自分类Dev

LINQ如何在Web Api 2中将列表嵌套到JSON?

来自分类Dev

在JavaScript中动态创建SVG链接

来自分类Dev

在JavaScript中从RSS结果创建动态链接

来自分类Dev

如何在JavaScript中动态链接方法

来自分类Dev

更改Javascript中的动态链接文本