我有一个列表,我想创建一个将加粗单击的列表项的函数。到目前为止,我设法创建了一个函数并将其分配给列表项。 Onclick,它加粗,但只有一项。我不知道如何为每个项目设置它。

我本可以使用id来加粗项目,但列表中将有很多项目。我不能与他们每个人打交道。

html

<ul>
    <li>apple</li>
    <li>orange</li>
    <li>banana</li>
</ul>


javascript

var list = document.getElementsByTagName("li");

function markSelection() {
    if(list[0].style.fontWeight !== "bold") {
        list[0].style.fontWeight = "bold";
    } else {
        list[0].style.fontWeight = "normal";
    }
}

for (i = 0, len = list.length; i < len; i++){
    list[i].onclick = markSelection;
}


它仅加粗列出[0]。如何将其设为加粗的单击列表项?

jsfiddle

最佳答案

function markSelection() {
    if(this.style.fontWeight !== "bold") {
        this.style.fontWeight = "bold";
    } else {
        this.style.fontWeight = "normal";
    }
}

for (i = 0, len = list.length; i < len; i++){
    list[i].onclick = markSelection;
}

关于javascript - 列表项数组上的Onclick事件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17265167/

10-13 07:56
查看更多