通过单击相同的链接更改div

时间:2013-10-17 19:28:48

标签: javascript jquery html css

我有#div1#div2。默认情况下会显示#div,而隐藏#div2。点击链接时,我想要隐藏#div1并显示#div2,再次点击我要隐藏的链接#div2并再次显示#div1

使用以下jQuery,我可以隐藏第一个div并显示#div2,但我不知道在同一个链接上再次点击时如何显示#div1。另外如何根据可见div切换链接标题(即切换到div1或div2)

HTML:

<a class="switch" href="#">Switch to Div 2</a>

<div id="div1">Div1</div>
<div id="div2">Div2</div>

jQuery的:

$(".switch").click(function() {
  $('#div1').hide();
  $('#div2').show();
});

CSS:

#div2 { 
   display: none; 
}

演示: http://jsfiddle.net/De4x2/

1 个答案:

答案 0 :(得分:11)

尝试toggle()

http://jsfiddle.net/94bUG/

$(".switch").click(function() {
  $('#div1, #div2').toggle();
  // the following line switches the text
  $(this).text('Switch to Div ' + ($('#div1').is(':visible') ? '2' : '1'));
});