如何使导航栏可点击
How to make the Nav bar clickable
嘿,我在这个网站上工作,我学会了如何用导航栏做这件事,这样颜色就会褪色,在它开始工作后,我无法获得任何链接。据我所知,这与e.preventDefault()有关,但我不知道如何解决这个问题。
这是我的代码
$(window).scroll(function() {
// 100 = The point you would like to fade the nav in.
if ($(window).scrollTop() > 100 ){
$('.bg').stop().animate({
opacity : 0.5
}, 10 );
} else {
$('.bg').stop().animate({
opacity : 0.0
}, 200 );
};
});
$('.scroll').on('click', function(e){
e.preventDefault()
$('html, body,').animate({
scrollTop : $(this.hash).offset().top
}, 1500);
});
/****NAV*****/
body{
background-color: #000;
font-family: 'Trebuchet Ms';
}
.container {
width: 100%;
height: 2000px;
position: relative;
/* font-family: 'Trebuchet Ms';*/
}
.bg {
background: #777;
width: 100%;
height: 100px;
opacity: 1;
}
.fixed {
position: fixed;
top: 0;
left: 0;
width: 100%;
z-index: 1;
}
ul {
height: 100px;
margin: -70px auto 0 auto;
width: 500px;
}
li {
float: left;
list-style: none;
margin: 10px 20px;
text-transform: uppercase;
/* letter-spacing: 0px;*/
color: wheat;
}
li a {
/* height: 100px;*/
text-transform: uppercase;
color: wheat;
font-family: 'Trebuchet Ms';
font-size:
}
/*
a {
text-align: center;
font-size: 50px;
color: #bdbdbd;
font-weight: bold;
text-decoration: none;
letter-spacing: 5px;
text-shadow: 1px 1px 1px #949494;
position: relative;
z-index: 1;
margin: 0 auto;
display: block;
}
a:hover {
color: #a6a6a6;
text-shadow: 1px 1px 1px #C9C9C9;
}
*/
a {
border-style: none;
}
a:link {
text-decoration: none;
}
a:hover {
color:wheat;
}
a:active {
color: #2c9d91;
text-decoration: inherit;
}
.down {
top: 150px;
}
.up {
top: 1800px;
}
/*******OVERLAY*******/
#writingoverlay {
position: fixed;
right: 0;
bottom: 0;
min-width: 100%;
min-height: 100%;
width: auto;
opacity: .5;
/* background: radial-gradient( coral, gray, darkslategray);*/
/* background: radial-gradien( coral,darkslategray, gray);*/
/* background: radial-gradient(darkslategray 35%, dimgray, gray);*/
background: radial-gradient(lightgray, gray, dimgray);
color: crimson
}
/*
#video-overlay {
position: fixed;
right: 0;
bottom: 0;
min-width: 100%;
min-height: 100%;
width: auto;
background: linear-gradient(to bottom left, crimson, coral);
opacity: 0.2;
}
*/
/*****VIDEO FULL SCREEN*****/
video {
position: fixed;
right: 0;
bottom: 0;
min-width: 100%;
min-height: 100%;
width: auto;
height: auto;
z-index: -100;
}
/*****FOOTER******/
footer {
color: wheat;
text-align: center;
font-size: 20px;
}
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<link rel="stylesheet" href="styles.css">
<script src="http://code.jquery.com/jquery-1.10.1.min.js"></script>
<script src="http://code.jquery.com/jquery-migrate-1.2.1.min.js"></script>
<script src="main.js"></script>
</head>
<body>
<div id="top" class="container">
<div class="fixed">
<div class="bg"></div>
<ul class="navBar">
<li><a href="index.html">home</a>
</li>
<li><a href="gal.html">photography</a>
</li>
<li><a href="film.html">film</a>
</li>
<li><a href="contact.html">contact</a>
</li>
</ul>
</div>
</div>
<footer>Contact info.</footer>
<div id="writingoverlay"></div>
<!-- <div id="video-overlay"></div> -->
<div class="vidOverlay">
<video id="video" autoplay controls loop muted>
<source src="/Img/8.mp4" type="video/mp4">
<source src="/Img/8.webm" type="video/webm">
</video>
</div>
</body>
</html>
这实际上与e.preventDefault无关,它与不透明度动画有关。基本上,您将不透明度标记带到覆盖链接的div中。如果你想测试这一点,你可以运行你的整个代码,只需要使用不同的动画而不是不透明,比如
height: '150px'
如果您只是在开发人员控制台中编辑css样式标记以删除不透明度,您也可以看到这种效果。
我认为如果你改变这个逻辑,使用导航栏而不是bg,你就会让它工作起来。我认为问题是,您有一个div覆盖了另一个div,所以您不能单击下面的div。
这对我有效,但很明显,你必须更改你的css以匹配你需要的:
if ($(window).scrollTop() > 100 ){
$('.navBar').stop().animate({
opacity : 0.5
}, 10);
} else {
$('.navBar').stop().animate({
opacity : 0.0
}, 200 );
};
我想你错过了一个/,试着放/index.html,这个/是为了你重定向你的路径。
<ul class="navBar">
<li><a href="/index.html">home</a>
</li>
<li><a href="/gal.html">photography</a>
</li>
<li><a href="/film.html">film</a>
</li>
<li><a href="/contact.html">contact</a>
</li>
</ul>
</div>
相关文章:
- 如何使导航栏可点击
- (html/css/javascript)试图使导航栏中的“当前页面”链接变成不同的颜色
- 如何使导航栏透明,然后使用bootstrap 3更改颜色.(粘贴)
- 如何使导航栏随着滚动上下滚动
- 如何使导航栏响应
- 如何使导航栏流畅
- 当到达定位点时,使导航栏透明
- 如何使导航栏最初隐藏在引导程序中
- 哪个选择器使导航栏固定并随页面滚动
- 引导程序,向下滚动后使导航栏变粘
- 如何使导航器正常工作
- 如何使导航栏只在移动视图中折叠
- 使导航条在滚动时保持位置
- 如何使导航条固定在滚动条的顶部
- 使导航条固定后滚动
- 如何使导航显示悬停
- 使导航栏与悬停下拉列表
- 如何使导航栏在单击链接时消失
- 如何使导航栏显示在滚动条上
- 当用户在浏览器中放大时,使导航条滚动