我有 TD 元素,其中包含锚标记和我希望在单击锚标记时显示的 div。另外,我希望其他人在单击其中任何一个时关闭,如果它已经打开的话。
HTML:
<td>
<a href="#"><img src="images/1.jpg" /></a>
<div class="test"><p>test</p></div>
</td>
<td>
<a href="#"><img src="images/1.jpg" /></a>
<div class="test"><p>test</p></div>
</td>
我尝试使用此 JQuery,但由于某种原因,我必须单击两次才能第一次显示 div,如果然后单击第二个,则第一个不会关闭。我不需要添加任何课程。
<script type="text/javascript">
$(document).ready(function() {
$('.test').hide();
$('td a').on('click', function() {
var state = $(this).next('.test').is('.open');
if (state) {
$(this).removeClass('active').next('.test').removeClass('open').show();
}else{
$(this).addClass('active').next('.test').addClass('open').hide()
.siblings('.test').removeClass('open').show().end()
.siblings('.test').not(this).removeClass('active');
}
});
});
</script>