定位导航jquery

效果:点击导航跳转到网页指定位置,滚动网页导航切换焦点;

知识点:锚点连接,scrollTop,offset

代码:

<!DOCTYPE html>
<html lang="zh">

	<head>
		<meta charset="UTF-8" />
		<title>锚点连接</title>
		<style type="text/css">
			* {
				margin: 0;
				padding: 0;
			}
			
			ul li {
				list-style: none;
			}
			
			#menu {
				width: 800px;
				margin: 0 auto;
				padding: 20px;
			}
			
			#menu li {
				border: 1px solid #ccc;
				margin-bottom: 10px;
			}
			
			#list {
				/*标记:让fixed元素贴靠另一个元素*/
				position: fixed;
				top: 100px;
				left: 50%;
				margin-left: 400px;
				width: 80px;
			}
			
			#list li a {
				text-decoration: none;
				color: green;
				display: block;
				padding: 5px 10px;
				text-align: center;
			}
			
			#list li a.sel {
				color: red;
			}
		</style>
		<script src="http://libs.baidu.com/jquery/1.11.3/jquery.min.js"></script>
	</head>

	<body>
		<ul id="list">
			<li class="sel">
				<a class="sel" href="#item0">0F</a>
			</li>
			<li>
				<a href="#item1">1F</a>
			</li>
			<li>
				<a href="#item2">2F</a>
			</li>
			<li>
				<a href="#item3">3F</a>
			</li>
			<li>
				<a href="#item4">4F</a>
			</li>
		</ul>
		<ul id="menu">
			<li id="item0" class="item">
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
			</li>
			<li id="item1" class="item">
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
			</li>
			<li id="item2" class="item">
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
			</li>
			<li id="item3" class="item">

				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
			</li>
			<li id="item4" class="item">
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>
				<p>娜美</p>

			</li>
		</ul>
	</body>

	<script type="text/javascript">
		$(document).ready(function() {

			$(window).scroll(function() {
				var domScrollTop = $(document).scrollTop(),
					$menu = $("#menu"),
					$items = $menu.find(".item"),
					currentId = ""; //滚动条现在所在位置的item id

				$items.each(function() {
					var _this = $(this);
					if(domScrollTop > _this.offset().top - 200) {
						currentId = "#" + _this.attr("id");
					} else {
						return false;
					}
				});

				var currentLink = $('#list').find(".sel");
				if(currentId && currentLink.attr("href") != currentId) {
					currentLink.removeClass("sel");
					$('#list').find("[href=" + currentId + "]").addClass("sel");
				}
			});

		});
	</script>

</html>

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值