Javascript:如何更改子元素的属性?

时间:2010-06-21 10:04:12

标签: javascript attributes

我有这个隐藏的链接,这是其他目的所需的:

<span id="notitle" style="display: none;">
<a href="...Foo" title="Foo" style="..."></a>
</span>

链接是动态生成的,并自动包含title属性。但我想删除title属性,因为当用户复制粘贴周围文本时会复制该值。

我想过使用javascript。这是我到目前为止所得到的:

<html>
    <head>
        <script type="text/javascript">
          function notitle() {
            var mylist=document.getElementById("notitle")
            var listitems= mylist.getElementsByTagName("a")
            for (i=0; i<listitems.length; i++) {
              listitems.setAttribute("title", "");
            }
      }
        </script>
    </head>

<body onLoad="notitle()">

<p>Before hidden link:
<span id="notitle" style="display: none;">
<a href="#Foo" title="Foo">This Link should have no title attribute</a>
</span>
After hidden link.</p>
</body>
</html>

但是不起作用。我想这是listitems.setAttribute("title", ""); 任何的想法?干杯:)

4 个答案:

答案 0 :(得分:3)

listitems是集合,因此您的代码可能会抛出错误。

无论如何,你想要:

listitems[i].setAttribute("title", "");

答案 1 :(得分:1)

首先,您需要使用listitems[i]选择一个特定项目,其次,我认为您可以这样做:

listitems[i].title = ""

答案 2 :(得分:0)

您需要添加i索引:

listitems[i].setAttribute("title", "");

答案 3 :(得分:0)

你正在做

listitems.setAttribute("title", ""); 

我一次。

在列表中添加数组索引。