jquery/js/a标签实现当前页面跳转的两种方法
在逛购物网站首页时经常看到侧边导航栏,当我们点击导航栏中某一项时会跳转到当前页面的某一处

有两种方法实现,一种是利用js计算好各位置的高度,通过绑定事件使页面跳转到指定位置,另一种是利用a标签进行当前页面不同部位跳转
方法1、js
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script src="../jquery-1.8.3/jquery.min.js"></script>
<script src="js/introduction.js"></script>
<link rel="stylesheet" href="css/induction.css">
</head>
<body>
<div class="container">
<div class="head">head</div>
<div class="content">
<div class="box">天猫超市</div>
<div class="box">天猫国际</div>
<div class="box">美丽人生</div>
<div class="box">潮店酷玩</div>
<div class="box">5</div>
<div class="box">6</div>
<div class="box">户外出行</div>
<div class="box">猜你喜欢</div>
</div>
<div class="side">
<div class="left-side">导航</div>
<div class="left-side">天猫超市</div>
<div class="left-side">天猫国际</div>
<div class="left-side">美丽人生</div>
<div class="left-side">潮店酷玩</div>
<div class="left-side">居家生活</div>
<div class="left-side">打造爱巢</div>
<div class="left-side">户外出行</div>
<div class="left-side">猜你喜欢</div>
<div id="goTop" class="left-side">顶部</div>
</div>
</div>
</body>
</html> body{margin:0;}
.box{
height: 300px;
width:600px;
margin:0 auto;
/*border:1px solid #000;*/
background-color: #dc90e4;
}
.head{
width: 600px;
height:600px;
margin:0 auto;
background-color: #fddda0;
}
.side{
display:none;
position:fixed;
top:150px;
font-size:12px;
font-family:"PingFang SC";
font-weight:400;
}
.left-side{
box-sizing:content-box;
width: 30px;
height: 30px;
margin-top:1px;
text-align: center;
padding:5px;
background-color: #ddd; } $(function(){
var tp,inx;
$(window).scroll(function(){
tp=$(window).scrollTop();
if(tp>=200){
$(".side").fadeIn(1000,function(){
$(this).show();
});
}else{ $(".side").fadeOut(1000,function(){
$(this).hide();
});
}
});
$("#goTop").on("click",function(){
$("html").animate({scrollTop:0},1000)
return false
});
$(".left-side").click(function(){
inx=$(this).index();
if(inx>0&&inx<9){
$("html").animate({scrollTop:(600+(inx-1)*300+"px")},1000); }
});
});
只是简单的写一下原理
方法2、a标签
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script src="../jquery-1.8.3/jquery.min.js"></script>
<script>
$(function(){
$(".container div").height($(window).height());
})
</script>
<style>
.container div{
width: 600px;
margin:0 auto;
}
.container div:nth-child(odd){
background-color: #dc90e4;
}
.container div:nth-child(even){
background-color: #fddda0;
}
.side{
position:fixed;
top:150px;
}
a{
display:block;
text-decoration: none;
}
a:hover{
color:green;
}
a:active{
color:red;
}
a:link{
color:yellow;
}
a:visited{
color:cyan;
}
</style>
</head>
<body>
<div class="container">
<div id="box1">box1</div>
<div id="box2">box2</div>
<div id="box3">box3</div>
<div id="box4">box4</div>
<div id="box5">box5</div>
<div id="box6">box6</div>
<div id="box7">box7</div>
<div id="box8">box8</div>
</div>
<div class="side">
<a href="jump-page.html#box1">box1</a>
<a href="jump-page.html#box2">box2</a>
<a href="jump-page.html#box3">box3</a>
<a href="jump-page.html#box4">box4</a>
<a href="jump-page.html#box5">box5</a>
<a href="jump-page.html#box6">box6</a>
<a href="jump-page.html#box7">box7</a>
<a href="jump-page.html#box8">box8</a>
</div>
</body>
</html>
方法1实现的具有滚动效果,也是网站中最常用的
1、利用jquery中的scrollTop()方法获取匹配元素相对滚动条顶部的偏移。
2、修改匹配元素的scrollTop属性值
方法2在实现时触发了a标签 ,但仍跳转到当前页面的与a标签中的id对应的部位,浏览器上面的页签有刷新显示,关键是
- 定义目标位置,赋予id。
- 给a标签添加href为#id。
jquery/js/a标签实现当前页面跳转的两种方法的更多相关文章
- uni-app 页面跳转的两种方法
1.navigator 标签 <navigator url="../component/classdetails/classdetails"> <view cl ...
- 实现网页页面跳转的几种方法(meta标签、js实现、php实现)
1.meta标签实现 只需在head里加上下面这一句就行了,在当前页面停留0.1秒后跳转到目标页面 代码如下 复制代码 1 <meta http-equiv="refresh&quo ...
- js 控制页面跳转的5种方法
js 控制页面跳转的5种方法 编程式导航: 点击跳转路由,称编程式导航,用js编写代码跳转. History是bom中的 History.back是回退一页 Histiory.go(1)前进一页 Hi ...
- Jsp页面跳转和js控制页面跳转的几种方法
Jsp 页面跳转的几种方法 1. RequestDispatcher.forward() 在服务器端起作用,当使用forward()时,Servlet engine传递HTTP请求从当前的Servle ...
- js实现页面跳转的两种方式
CreateTime--2017年8月24日08:13:52Author:Marydon js实现页面跳转的两种方式 方式一: window.location.href = url 说明:我们常用 ...
- a标签点击不跳转的几种方法
a标签点击不跳转的几种方法 1.onclick事件中返回false <a href="http://www.baidu.com" onclick="return f ...
- HTML 页面跳转的五种方法
H方法TML 页面跳转的五种方法 下面列了五个例子来详细说明,这几个例子的主要功能是:在5秒后,自动跳转到同目录下的hello.html(根据自己需要自行修改)文件.1) html的实现 <he ...
- vue里使用element饿了么的el-menu+vue-router实现路由跳转的两种方法
最近准备写一个echarts的可视化展示案例,首先用vue-cli3创建了一个项目(好像vue-cli4也出来,感觉变化不大,就没升级了) 然后,开始配置路由↓下面是我的router.js文件 imp ...
- 实现网页页面跳转的几种方法大全(meta标签、js实现、php实现)
1.meta标签实现 只需在head里加上下面这一句就行了,在当前页面停留0.1秒后跳转到目标页面 代码如下 复制代码 1 <meta http-equiv="refresh&quo ...
随机推荐
- 全排列函数(next_permutation)
顾名思义,这个函数就是用来求数组的全排列的,至于怎么用,看下面的介绍: 这是一个c++函数,包含在头文件algorithm里面,这个函数可以从当前的数组的大小按照字典序逐个递增的顺序排列 看下面的模板 ...
- 使用gulp构建工具
之前一个demo中用的是grunt,照着grunt用到的插件找了下gulp的,总体使用还算顺畅,说实话并不觉得学习成本有降低什么的,差不多.不过也遇到一些问题: 1.gulp.dest()输出目录需要 ...
- (转)Xargs用法详解
Xargs用法详解 原文:http://czmmiao.iteye.com/blog/1949225 简介之所以能用到这个命令,关键是由于很多命令不支持|管道来传递参数,而日常工作中有有这个必要,所以 ...
- 系统启动与Linux的初始化_1
boot 的起源: the term bootstrap refers to a person who tries to stand up by pulling her own boots. (Und ...
- 排序算法对比,步骤,改进,java代码实现
前言 发现是时候总结一番算法,基本类型的增删改查的性能对比,集合的串并性能的特性,死记太傻了,所以还是写在代码里,NO BB,SHOW ME THE CODE! github地址:https://gi ...
- Java开发笔记(九十八)利用Callable启动线程
前面介绍了如何利用Runnable接口构建线程任务,该方式确实方便了线程代码的复用与共享,然而Runnable不像公共方法那样有返回值,也就无法将线程代码的处理结果传给外部,造成外部既不知晓该线程是否 ...
- HTTP缓存技术,304和200有何区别
为什么有的缓存是 200 OK (from cache),有的缓存是 304 Not Modified 呢?很简单,看运维是否移除了 Entity Tag.移除了,就总是 200 OK (from c ...
- Diagnostics->Examine功能不能使用
在获取字段来源时: 执行Help->Diagnostics->Examine 系统弹出
- <logger>和<root>
<logger>用来设置某一个包或者具体一个类的日志打印级别.以及制定<appender>.<logger>可以包含零个或者多个<appender-ref&g ...
- 如何使用VS将项目生成一个安装包?
VS2010项目的部署与安装winform程序,我想进行安装.1.在解决方案中 ——点击右键——添加 2.然后选择 安装和部署 ——安装向导 可以更改名称 3.点击 下一步 4.然后选择上那3个 5. ...