getAttribute()对类名不起作用?

时间:2019-02-28 02:33:08

标签: javascript html

我正在一个触摸屏项目上,尝试显示一些图像(将一行分割成几段,并使用每段的背景显示图像),并为所选图像添加边框(只能是一个选中),现在我需要通过onclick()显示移位的图像,例如,首先显示图像1-6,单击后应显示图像2-7,问题是我的边框属于每个段落,并且不随图像移动,我试图在滑动图像之前检查是否选择了图像。

我可以使用setattribute()为段落设置背景图像,假设一个段落的ID为“ img5”,另一段落的ID为“ img6”:
 document.getElementById('img5').setAttribute("class", "noborder"); document.getElementById('img6').setAttribute("class", "borderstyle1"); 然后当我尝试获取属性时: var x= document.getElementById('img1').getAttribute('class'); if(x.equals("borderStyle1")) {.....} 但是上面的内容被卡住了,这让我想起了:未捕获的TypeError:x.equals不是函数,有什么建议吗?谢谢

2 个答案:

答案 0 :(得分:1)

您的意思是:

if (x === 'borderStyle1') {}

x的值是在DOM元素上调用.getAttribute方法后的字符串。

答案 1 :(得分:0)

您可以更改为x ==“ borderStyle1”来比较文本字符串

if(x.equals("borderStyle1")){
}

var x= document.getElementById('img1').getAttribute('class');
 if(x == "test1"){
 alert('ok');
 }
<img src="" id="img1" class="test1" />