gpt4 book ai didi

javascript - Javascript:getElementsByClassName:如何仅获取 parent

转载 作者:行者123 更新时间:2023-12-02 07:59:21 25 4
gpt4 key购买 nike

我有这样的HTML:

<div class="item">
<img class="item-image" src="${item.getImage()}"/>
<p>${item.getName()}</p>
</div>

和Javascript:
var classname = document.getElementsByClassName("item");

for (var i = 0; i < classname.length; i++) {
classname[i].addEventListener('click', (e) => {
addBorder(e.target);

});
};

function addBorder(item) {
if (item.tagName = 'DIV') {
item.style.border = "3px solid red";
}
}

当我单击项目时,它会添加一个红色边框。但是,如果单击碰巧碰触到图像或段落,则会在它们周围绘制红色边框。我试图通过在 addBorder中添加if条件来防止这种情况,但这没有帮助。即使点击恰好落在 pimg内,是否有办法仅使父div变为红色边框?

enter image description here

最佳答案

因为item.tagName = 'DIV'的意思是:将DIV分配给item.tagName。因此,您只需要用item.tagName = 'DIV'替换item.tagName === 'DIV'进行比较即可。

if (item.tagName === 'DIV') {
item.style.border = "3px solid red";
}

关于javascript - Javascript:getElementsByClassName:如何仅获取 parent ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59507917/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com