DOM - 选择 HTML 元素的特定属性
DOM - 选择 HTML 元素的特定属性
我正在使用DOM事件委托进行实验,并试图弄清楚为什么除了ID属性之外,我无法选择特定的HTML元素。\n
var html = '%description%%value%' document.querySelector('.item__clearfix').addEventListener('click', function(event){ console.log(event.target.parentNode.parentNode.parentNode.parentNode); });\n我应该得到的parentNode是:div class=\"item__clearfix\" id=\"770\"。\n当我选择它的ID属性时,我可以得到\"770\",但如果我尝试选择其他属性,我会得到未定义。为什么会这样?\n
event.target.parentNode.parentNode.parentNode.parentNode.id >> 770 event.target.parentNode.parentNode.parentNode.parentNode.prop2 >> 未定义\n如果我没有解释清楚,对不起。
DOM(文档对象模型)是用于访问和操作HTML文档的一种编程接口。在DOM中,可以通过选择特定的HTML元素来操作其属性。然而,有时候我们只想选择元素的某个特定属性,而不是整个元素本身。下面我们将讨论这个问题的原因和解决方法。
问题的原因在于,DOM提供了一种公开访问元素id的方法,即通过直接访问元素的id属性。但是对于其他属性,我们需要使用getAttribute('property_name')方法来获取它们的值。
解决方法非常简单,只需要使用getAttribute方法,并将要获取的属性名称作为参数传递给它即可。例如,如果我们想获取元素的class属性,可以使用getAttribute('class')方法。这样就可以获取到class属性的值了。
总结起来,问题的原因是DOM只提供了一种公开访问元素id的方法,而对于其他属性,我们需要使用getAttribute方法来获取它们的值。解决方法是使用getAttribute方法,并将要获取的属性名称作为参数传递给它。
希望这篇文章对你理解DOM中选择特定HTML元素属性的问题有所帮助。