<ul>
<li class="active"><a href="#block1">1<a/> </li>
<li><a href="#block2">2<a/> </li>
<li>3</li>
<ul>
<div id="block1">
Block1
</div>
<div id="block2">
Block2
</div>
$('ul li:has(a)').on('click', function(e){
$(this).closest('li').addClass('active').siblings('li').removeClass('active');
$('*[id^="block"]').hide();
.filter(this.hash).show(); //WRONG//
e.preventDefault();
});
我知道这很容易让 jQuery 只click
在a
标签上.filter(this.hash).show();
,
$('ul li a').on('click', function(){
$('*[id^="block"]').hide().filter(this.hash).show();
}
但我想知道并了解是否有另一种方法可以使它起作用。谢谢!