到达" a"用Javascript修改它们的标签

时间:2016-02-28 23:06:30

标签: javascript html

我的HTML代码中包含此代码:

<!DOCTYPE html>
<head></head>
</body>
<div class="exercise ex1">
    <h1>Zadanie 1</h1>
    <div>
        <h3>Chrome</h3>
        <div class="chrome"></div>
        <a href="https://www.google.pl/chrome/browser/desktop/index.html">Opera</a>
    </div>
    <div>
        <h3>Microsoft Edge</h3>
        <div class="edge"></div>
        <a href="www.github.pl">Microsoft Edge</a>
    </div>
    <div>
        <h3>Firefox</h3>
        <div class="firefox"></div>
        <a href="www.coderslab.pl">Opera</a>
    </div>
</div>
</body>
</html>

并且我不知道如何获取我的标签,因此我可以在JavaScript中更改其内部HTML和href。我非常感谢你的帮助!

5 个答案:

答案 0 :(得分:0)

像这样:

document.getElementsByTagName("A")

返回一组元素 - 更具体地说,返回一个NodeList对象。然后可以以与数组类似的方式访问它:

var allAs = document.getElementsByTagName("A");
console.log(allAs[0].href); //will print "https://www.google.pl/chrome/browser/desktop/index.html"

如果您想了解更多有关如何使用此功能的信息,请参阅https://developer.mozilla.org/en-US/docs/Web/API/Document/getElementsByName

答案 1 :(得分:0)

正如millerbr所指出的那样,document.getElementsByTagName("A")将返回一个像对象一样的数组。然后,您可以通过转document.getElementsByTagName("A")[0].innerHTML = "NotChrome"

来编辑hrefs innerHTML

查看此jsFiddle

答案 2 :(得分:0)

您可以使用querySelectorAll并迭代元素

var anchors = document.querySelectorAll('a');

for ( var i = anchors.length; i--; ) {
    anchors[i].innerHTML = 'something else';
    anchors[i].href = 'http://someother_url.com'; 
}

答案 3 :(得分:0)

您可以使用document.querySelectorAll("a")for循环来迭代文档中的所有a元素。

注意,似乎缺少<html>标记,第一个body元素标记应为<body>,而不是关闭</body>标记

&#13;
&#13;
<!DOCTYPE html>
<html>
<head></head>
<body>
<div class="exercise ex1">
    <h1>Zadanie 1</h1>
    <div>
        <h3>Chrome</h3>
        <div class="chrome"></div>
        <a href="https://www.google.pl/chrome/browser/desktop/index.html">Opera</a>
    </div>
    <div>
        <h3>Microsoft Edge</h3>
        <div class="edge"></div>
        <a href="www.github.pl">Microsoft Edge</a>
    </div>
    <div>
        <h3>Firefox</h3>
        <div class="firefox"></div>
        <a href="www.coderslab.pl">Opera</a>
    </div>
</div>
  <script>
    var a = document.querySelectorAll("a");
    for (var i = 0; i < a.length; i++) {
      console.log(a[i], a[i].innerHTML, a[i].href)
    }
    </script>
</body>
</html>
&#13;
&#13;
&#13;

答案 4 :(得分:0)

您可以使用document.links collection迭代文档中的链接,{{3}}包含具有href属性的所有A和MAP元素,例如

Array.prototype.forEach.call(document.links, function(link) {
  console.log(link.href);
});

请注意,没有href的A元素不是链接,它们是锚点(即它们是链接的目标)。使用getElementsByTagName('a')将返回所有A元素,包括那些不链接的元素。