我在页面上有几个元素,结构如下:
<div>
<button>
<table id="table1" class='tableClass'>
misc child elements
</table>
</div>
重复6次。
点击<button>
后,我想切换#table1
的可见性,并隐藏非.tableClass
的所有#table1
-
这就是我到目前为止,点击<button>
时会触发它。
$('.tableClass').not(this.children()).fadeOut();
问题是我需要访问相应的.tableClass
。 this.children()
行不是我想要的,因为我知道该表不是按钮的子节点,但我想不出一种简单的方法。
我知道这很直接,但我睡不着觉,没有喝咖啡:)
答案 0 :(得分:1)
看到其他答案,但这是另一种方法:
$('button').on('click', function() {
$('#table1').toggle();
$('.tableClass[id != "table1"]').fadeOut();
});
答案 1 :(得分:0)
试试这个:
var table = $(this).closest('div').find('.tableClass').fadeIn();
$('.tableClass').not(table).fadeOut();