我有10个具有相同类名“dp-check”的html div,我将其用作组件 并在同一页面中的大量时间使用。现在我的问题是,当我点击其中一个时,所有div都被隐藏,然后它的“display”被设置为“inline”(只有那个实例)而所有其他的都被隐藏了,我想关闭任何其他具有相同类名的div显示或单击页面上的其他位置。
答案 0 :(得分:1)
试试这个:
function clickHandler(e){
e = e || window.event;
var elements = document.getElementsByClassName('dp-check');
for(var i = 0; i < elements.length; i++){
elements[i].style.display = 'none'; // Hide all elements.
}
e.target.style.display = 'inline'; // Show the clicked element.
}
您必须将clickHandler
分配给元素上的点击事件。
答案 1 :(得分:-1)
当使用jQuery单击页面上的其他位置时,您可以隐藏所有dp-check
div:
$('body').click(function (event) {
var $target = $(event.target);
if(!$target.hasClass("dp-check") ) {
$("dp-check").css('display','none');
}
}