So fügen Sie Klickereignisse zu denselben Elementschaltflächen hinzu und zeigen bzw. verbergen die entsprechenden UL-Tags unten!
业精于勤,荒于嬉;行成于思,毁于随。
原生js的话可以构造一个显隐函数,然后遍历给每个btn。显隐函数可以通过css3的transition改变ul的高度,或者改变display、opacity,具体得根据实际情况来定。简单一点可以用jQuery中的fade,slide。
这是个XY问题
目的不是为了得到元素索引,而是给同类元素绑定类似的事件处理
为所有要绑定事件的按钮添加一个特殊的类
<button id="btn1" class="btn-toggle-menu">1</button> <ul>...</ul> <button id="btn2" class="btn-toggle-menu">2</button> <ul>...</ul> <button id="btn3" class="btn-toggle-menu">3</button> <ul>...</ul> <button id="btn4" class="btn-toggle-menu">4</button> <ul>...</ul>
通过类选中这些元素绑定处理就好了
$('button.btn-tobble-menu').each(function(){ $(this).next().hide() // 隐藏按钮后面紧跟的元素 }) $('button.btn-toggle-menu').click(function(){ $(this).next().show() // 显示按钮后面紧跟的元素 })
给每个button 加上一样的class=“btn bt1” class=“btn bt2” class=“btn bt3”
$('.btn').click(function(){ $(".btunder").hide();
$(this).next(".btunder").show() ;
})
原生js的话可以构造一个显隐函数,然后遍历给每个btn。显隐函数可以通过css3的transition改变ul的高度,或者改变display、opacity,具体得根据实际情况来定。简单一点可以用jQuery中的fade,slide。
这是个XY问题
目的不是为了得到元素索引,而是给同类元素绑定类似的事件处理
为所有要绑定事件的按钮添加一个特殊的类
通过类选中这些元素绑定处理就好了
给每个button 加上一样的class=“btn bt1” class=“btn bt2” class=“btn bt3”
$('.btn').click(function(){
$(".btunder").hide();
})