你能在getElementsByClassName(“”)[]中使用变量吗?如何?

时间:2016-11-14 06:59:02

标签: javascript html css

我正在尝试在document.getElementsByClassName("photo")[2].setAttribute("id", "current_page");上设置班级编号选择器,即2是变量。

这是我的真实代码: HTML: onclick="test(this)"

和JS:

function test(y) {
	var x = y;
	document.getElementsByClassName("photo")[2].setAttribute("id", "current_page");
}

那么如何让类选择器(例如它是[2])变量?

非常感谢!

2 个答案:

答案 0 :(得分:1)

我不确定您是否从您的示例中了解了您的要求,但您可以使用变量作为类名:

var className = 'photo';    
var elements = document.getElementsByClassName(className);

虽然从你的例子中你似乎想要getElementsByClassName返回的第三个元素?要再次使用变量选择第n个元素,您可以执行以下操作:

var elementIndex = 2;
var element = document.getElementsByClassName(className)[elementIndex];

希望我明白,但如果这不是你想要的话,请添加评论。

答案 1 :(得分:1)

如果在同一元素中添加属性id。像这样使用



function test(that) {
	
	that.setAttribute("id", "current_page");
}