当有人点击某个链接时,我编写了这段代码来加载DIV的内容。
现在,如果您点击链接两次,则会删除内容。
以下是代码:
$('a').click(function() {
var id = $(this).attr('class');
if(id == 'first')
{
$('.active').removeClass('active');
$('a.first').addClass('active');
}
else if(id == 'second')
{
$('.active').removeClass('active');
$('a.second').addClass('active');
}
$('#first').toggle(id == 'first');
$('#second').toggle(id == 'second');
});
HTML:
<a class="first">one</a>
<a class="second">two</a>
<div>
<li id="first">
<h2>pen</h2>
<div>
<div>parker</div>
</div>
</li>
<li id="second" style="display: none;">
<h2>car</h2>
<div>Bugatti</div>
</div>
</li>
</div>
CSS:
.active { color: green; }
答案 0 :(得分:4)
答案 1 :(得分:-1)
您不是“加载”内容,而是在隐藏内容后显示内容(使用display: none
)。
因此内容不会被“删除”,而是隐藏的。每次使用removeClass('active');
时,都会隐藏相应的元素。
您的代码中toggle()
的含义是什么?我认为你错了。要么你应该倒两个(先用第二个,第二个用第一个),或者用不同的方法。