使用 class 名称更改 <i> 元素的 alt 和标题?

change alt and title of an <i> element by using class name?

我有一个带有 class 的 <i> 元素,我想更改它的 alt 和 title 标签。

我的HTML

<a class="myspace-hover " target="_blank" href="#">
<i class="mk-jupiter-icon-myspace" alt="myspace" title="myspace"></i>
</a>

这是我尝试过的:

window.onload = function(){
    document.getElementsByClassName("mk-jupiter-icon-myspace")[0] = "test" ;
    document.getElementsByClassName("mk-jupiter-icon-myspace")[1] = "alttest" ;
}

以及:

window.onload = function(){
    document.getElementsByClassName("mk-jupiter-icon-myspace").title = "test" ;
    document.getElementsByClassName("mk-jupiter-icon-myspace").alt = "alttest" ;
}

但显然我误解了文档和我一直在阅读的内容。

任何正确方向的指示都将不胜感激。

getElementsByClassName returns 一个类似数组的 HTML 集合。

HTML 集合的每个成员都是一个具有自己的一组属性的元素。

你需要通过索引获取元素,然后设置你关心的属性:

document.getElementsByClassName("mk-jupiter-icon-myspace")[0].title = "test" ;

请注意,alt 是一个为 图像 提供文本替换的属性。一段斜体文本(<i> 的意思)不是图像,不能有 alt 属性。 Use a validator.

与此同时,您的 title 看起来更适合 <a> 元素。