[英]Show / Hide Divs via anchor links in a navbar
我有一个导航栏使用锚链接连接到不同的div。 我隐藏了所有div,但我希望它们根据您点击的链接显示。
<!-- NAV CONTAINER -->
<div class="navContainer">
<nav class="clearfix">
<ul class="clearfix">
<li><a href="#home">Home</a></li>
<li><a href="#page1">Overview</a></li>
</ul>
</nav>
</div>
<!-- DIV CONTAINER -->
<div class="container">
<div class="sections" id="home">
homepage with title here
</div>
<div class="sections" id="page1">
page 1
</div>
</div>
我知道你可以使用jQuery做到这一点,但我无法做任何事情。 现在div设置为display:none。 加载网站时应显示“主页”。
一种可能的解决方案是使用css伪选择器:target
.sections {display:none;}
.sections:target {display:block;}
CSS3选择器得到了很好的支持,但是:target
可以提供奇怪或错误的行为,如下所述: http : //css-tricks.com/on-target/
如果你想用jQuery控制它...试试看: http : //jsfiddle.net/luiggi/kRgt6/
$(document).ready(function () {
$("li.home").click(function () {
$("#home").toggle();
$("#page1").hide();
});
$("li.overview").click(function () {
$("#page1").toggle();
$("#home").hide();
});
});
您可能需要在锚链接中添加某种CSS类,以便您可以更轻松地找到特定的触发器。
仅从内存中,代码将是这样的(假设锚具有“ToggleDiv”类名)。
$('.ToggleDiv').each(function(el){
var divId = $(el).attr("href");
$(el).click(function(){
$(divId).Toggle();
});
})
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.