首先放出html
<body>
<contain class="test1">
<a name="topAnchor"></a>
<div id="top">我是顶部</div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
</contain>
<footer>
<button id="backTop1">第一种方式回到顶部</button>
<button id="backTop2">第二种方式回到顶部</button>
<button id="backTop3">第三种方式回到顶部</button>
</footer>
</body>
然后具体操作步骤如下
const backTop1 = document.getElementById("backTop1")
backTop1.addEventListener("click", function (e) {
let a = document.createElement("a")
a.href = "#topAnchor"
e.target.appendChild(a)
a.onclick = function (e) {
e.stopPropagation()
}
a.click()
e.target.removeChild(a)
})
效果如下图所示
效果很明显,在事件触发之后,页面立马跑到的顶部,在交互性没啥要求的时候,这种做法确实没啥问题,不过要求高了之后就不行了,会显得有些突兀。
此 api 需要传递 DOM元素相对于window的 left 和 top 的距离,此例子仅展示简单demo,只考虑 top 坐标
当然它还有一个 behavior 参数,将其设置为 smooth 后,将会出现滑动效果 步骤如下:
代码如下:
const backTop2 = document.getElementById("backTop2")
const TOP = document.getElementById("top")
const y = TOP.offsetTop
const backTop3 = document.getElementById("backTop3")
backTop3.addEventListener("click", function (e) {
window.scrollTo({ top: y, left: 0, behavior: 'smooth' })
})
效果如下图所示
从效果上来看,相较于a标签,该api支持动画,使得页面更丝滑
该 api 相较于上一个,节点信息更加的明确,操作方法也更加的简洁,更利于后续的维护
代码如下
const backTop2 = document.getElementById("backTop2")
const TOP = document.getElementById("top")
backTop2.addEventListener("click", function (e) {
TOP.scrollIntoView({ behavior: "smooth" })
})
效果如下图所示
从效果上来看,该api和scrollTo的作用是一致的,但是从代码结构上来说,scrollIntoView会更加的简洁
以上三种方法是我目前比较常用的,如有不同之处,还望诸君不吝赐教!
作者:pengpeng
链接:https://juejin.cn/post/6906142651121139719
来源:掘金
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
家好,我是江湖哥,今天分享html教程入门级的部分,大神请绕道,小白请点赞,哈哈,言归正传:
知识要点:
1. a标签的概念
2. a标签属性
a标签的作用:就是用于控制页面与页面之间的跳转的
a标签的格式:<a href="指定要跳转的目标界面的链接">需要展示给用户看见的内容</a>
<a href="https://www.toutiao.com/">江湖哥博客</a>
a标签中有一个target属性,这个属性的作用就是专门用于控制如何跳转
值
描述
_blank
于在新的选项卡中跳转,也就是新建页面跳转
_self
默认。在当前选项卡中打开被链接文档,也就是不新建页面跳转
_parent
在父框架集中打开被链接文档。
_top
在整个窗口中打开被链接文档。
framename
在指定的框架中打开被链接文档。
<a href="https://www.toutiao.com/">可见内容</a>
<a href="https://www.toutiao.com/" target=”_blank”>江湖可见博客</a>
a标签中还有一个属性,叫做title,a标签中的title和img标签中title一样,都是用来控制鼠标悬停时显示的提示文本内容的
<a href="https://www.toutiao.com/" target="_blank" title="点击会跳转到可见博客首页">可见</a>
设置 target 属性时, top 与 parent 的打开方式十分类似,需仔细区分。
比如网 A 中镶嵌了 iframe 网页 B,网页 B 又镶嵌了 iframe 网页C。
· 如果网页 C 中连接设置 target=_parent,则跳转到网页 B 去掉直接在 A 中嵌入网页 C 中链接页面。
· 如果网页 C 中 target=_top ,则直接跳出所有 iframe 框架,直接转向 C 中链接页面
1.a标签不仅可以让文字可以点击,还可以让图片也能够被点击。
2.一个a标签必须有一个href属性,否则a标签不知道要跳转到什么地方
3.如果通过a标签的href属性指定一个URL地址,那么必须在地址前面加上http://或https://。
4.a标签的href属性除了可以绑定一个网络地址以外,还可以指定一个本地的地址
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>a标签的使用</title>
</head>
<body>
<a name="top"></a>
<a href="https://www.toutiao.com/">a是控制界面也页面的跳转</a><br><br>
<a href="https://www.toutiao.com/" target="_blank">跳转到新窗口打开</a><br><br>
<a href="#name1">锚点跳转1</a>&nssp;&nssp;&nssp;<a href="#name2">锚点跳转2</a>
<br><br><br><br><br><br><br><br><br><br>
<br><br><br><br><br>
<br><br><br><br><br>
<br><br><br><br><br>
<br><br><br><br><br>
<br><br><br><br><br>
<br><br><br><br><br>
<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br>
这是一个锚点跳转文字1 <a name="name1"></a> <a href="#top">返回顶部</a>
<br><br><br><br><br><br><br><br><br><br>
<br><br><br><br><br>
<br><br><br><br><br>
<br><br><br><br><br>
<br><br><br><br><br>
<br><br><br><br><br>
<br><br><br><br><br>
<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br>
这是一个锚点跳转文字2 <a name="name2"></a> <a href="#top">返回顶部</a>
</body>
</html>
关注我,点击下面链接,即可看视频
大家介绍如何通过 JS/CSS 实现网页返回顶部效果。
CSS 按钮样式:
#myBtn {
display: none; /* 默认隐藏 */
position: fixed;
bottom: 20px;
right: 30px;
z-index: 99;
border: none;
outline: none;
background-color: red; /* 设置背景颜色,你可以设置自己想要的颜色或图片 */
color: white; /* 文本颜色 */
cursor: pointer;
padding: 15px;
border-radius: 10px; /* 圆角 */
}
*请认真填写需求信息,我们会在24小时内与您取得联系。