单击另一个元素时向元素添加 class
Add a class to an element when another element is clicked
我正在尝试在单击另一个元素时将 class 添加到一个元素。
这是一个弹出脚本,我试图通过切换 CSS 不透明度 属性.
来实现
这是我的 HTML,
<span class="container">
<span class="visible-text" onclick="addClassToPopUp()">
</span>
<span class="popup-text">
</span>
</span>
并且重复多次。
页面上的可见文本包含在 .visible-text
class 中,弹出文本包含在 .popup-text
中。 .popup-text
class 的不透明度为零。
我想在单击 .visible-text
框时向 .popup-text
添加一个 class。 class 会将不透明度覆盖为 1。
现在我的问题,
我可以使用 document.getElementsByClassName("popup-text");
获得所有 classes 的列表,但如何缩小当前列表的范围?
一种方法是限制在父元素中
function addClassToPopUp(elem) {
var popUp = elem.parentNode.getElementsByClassName("popup-text")[0];
popUp.classList.toggle("active");
}
.popup-text {
display:none;
}
.popup-text.active {
display:block;
}
<span class="container">
<span class="visible-text" onclick="addClassToPopUp(this)">Hello
</span>
<span class="popup-text">World
</span>
</span>
我正在尝试在单击另一个元素时将 class 添加到一个元素。
这是一个弹出脚本,我试图通过切换 CSS 不透明度 属性.
来实现这是我的 HTML,
<span class="container">
<span class="visible-text" onclick="addClassToPopUp()">
</span>
<span class="popup-text">
</span>
</span>
并且重复多次。
页面上的可见文本包含在 .visible-text
class 中,弹出文本包含在 .popup-text
中。 .popup-text
class 的不透明度为零。
我想在单击 .visible-text
框时向 .popup-text
添加一个 class。 class 会将不透明度覆盖为 1。
现在我的问题,
我可以使用 document.getElementsByClassName("popup-text");
获得所有 classes 的列表,但如何缩小当前列表的范围?
一种方法是限制在父元素中
function addClassToPopUp(elem) {
var popUp = elem.parentNode.getElementsByClassName("popup-text")[0];
popUp.classList.toggle("active");
}
.popup-text {
display:none;
}
.popup-text.active {
display:block;
}
<span class="container">
<span class="visible-text" onclick="addClassToPopUp(this)">Hello
</span>
<span class="popup-text">World
</span>
</span>