点击第一个li里的button 时显示或隐藏 第一个li里面class 为hidden的div ,不影响 下面2个li
3个回答
展开全部
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>百度知道测试</title>
<style>
ul{list-style: none;}
ul li{ line-height: 40px; }
.button{ margin:10px; height: 30px; line-height: 30px; padding:0 10px; cursor: pointer;}
.hidden{width: 200px;height: 200px; margin:10px; background: #eee; text-align: center;}
</style>
<script>
window.onload = function(){
var btn = document.getElementsByTagName("button");
for (var i = 0; i < btn.length; i++) {
btn[i].onclick = function(){
hide(this);
}
}
};
function hide(obj){
var hidden;
var hideboxp = obj.parentNode.parentNode.childNodes;
for (var i = 0; i < hideboxp.length; i++) {
var noden = hideboxp[i].nodeName;
if (noden == "DIV") {
hclass = hideboxp[i].className;
if(hclass == "hidden"){
hidden = hideboxp[i];
}
}
}
if(hidden.style.display == "none"){
hidden.style.display = "block";
}else{
hidden.style.display = "none";
}
}
</script>
</head>
<body>
<ul>
<li>
<div>
<div class="">
<span>内容</span><button class="button">按钮1</button>
</div>
<div class="hidden">
点击按钮显示隐藏div1
</div>
</div>
</li>
<li>
<div>
<div class="">
<span>内容</span><button class="button">按钮2</button>
</div>
<div class="hidden">
点击按钮显示隐藏div2
</div>
</div>
</li>
<li>
<div>
<div class="">
<span>内容</span><button class="button">按钮3</button>
</div>
<div class="hidden">
点击按钮显示隐藏div3
</div>
</div>
</li>
</ul>
</body>
</html>
代码已测试:
(纯手打,求采纳 梦魂清风 @author:dream breeze)!
展开全部
使用jQuery的话很方便:
//需要引入jQuery
$('button').on('click', function () {
var $li = $(this).parents('li:first');
$li.find('.hidden').toggle();
})
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
用css选择器 ul>li:first-child 获得第一个li,然后再在li里面分别获取按钮和需要隐藏的div,写js逻辑即可
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询