用js实现简单的点击返回顶部效果
来源:互联网 发布:重庆mac专柜 编辑:程序博客网 时间:2024/05/22 10:40
转自:http://www.cnblogs.com/jingangel/archive/2012/03/08/2385939.html
当页面特别长的时候,用户想回到页面顶部,必须得滚动好几次滚动键才能回到顶部,如果在页面右下角有个“返回顶部”的按钮,用户点击一下,就可以回到顶部,对于用户来说,是一个比较好的体验。
实现原理:当页面加载的时候,把元素定位到页面的右下角,当页面滚动时,元素一直位于右下角,当用户点击的时候,页面回到顶部。
要点一:document.documentElement.clientWidth || document.body.clientWidth; 获得可视区的宽度。后面是兼容chrome,前面是兼容其它浏览器。
要点二:oTop.style.left = screenw - oTop.offsetWidth +"px"; 当页面加载时,让元素的位置位于页面最右边,用可视区的宽度减去元素本身的宽度。
要点三:oTop.style.top = screenh - oTop.offsetHeight + scrolltop +"px"; 当页面滚动时,元素的Y坐标位置等于可视区的高度减去元素本身的高度,加上滚动距离。
要点四:document.documentElement.scrollTop = document.body.scrollTop =0; 当点击元素时,让页面的滚动距离为0.写两个是为了兼容。
上代码:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>无标题文档</title>
<style>
body{margin:0; padding:0}
#to_top{width:30px; height:40px; padding:20px; font:14px/20px arial; text-align:center; background:#06c; position:absolute; cursor:pointer; color:#fff}
</style>
<script>
window.onload = function(){
var oTop = document.getElementById("to_top");
var screenw = document.documentElement.clientWidth || document.body.clientWidth;
var screenh = document.documentElement.clientHeight || document.body.clientHeight;
oTop.style.left = screenw - oTop.offsetWidth +"px";
oTop.style.top = screenh - oTop.offsetHeight + "px";
window.onscroll = function(){
var scrolltop = document.documentElement.scrollTop || document.body.scrollTop;
oTop.style.top = screenh - oTop.offsetHeight + scrolltop +"px";
}
oTop.onclick = function(){
document.documentElement.scrollTop = document.body.scrollTop =0;
}
}
</script>
</head>
<body style="height:1000px;">
<h1>返回顶部</h1>
<div id="to_top">返回顶部</div>
</body>
</html>
我的微博 http://weibo.com/u/1650528354
博客地址 http://www.cnblogs.com/jingangel/
本博的代码都是博主边学习边写的,代码都是自己敲的,如果要复制请加上出处,谢谢!
博客地址 http://www.cnblogs.com/jingangel/
本博的代码都是博主边学习边写的,代码都是自己敲的,如果要复制请加上出处,谢谢!
0 0
- 用js实现简单的点击返回顶部效果
- 用js实现简单的点击返回顶部效果
- JS实现效果-点击按钮返回到页面顶部
- 点击返回顶部的实现
- ios 点击返回顶部效果的实现,类似单击状态栏效果
- Js简单实现返回顶部按钮功能
- js简单的实现点击选中点击取消的效果
- 如何实现“返回顶部”的页面效果
- 返回顶部效果的代码实现
- 简单的弹性返回顶部JS代码
- js实现返回顶部
- js 返回顶部效果代码
- 【JS基础】返回顶部效果
- 返回顶部的js实现(jQuery/MooTools)
- 返回顶部的js实现(jQuery/MooTools)
- js实现返回顶部功能的解决方案
- 返回顶部的js实现(jQuery/MooTools)
- js实现返回顶部功能的解决方案
- 我们该如何选择适合自己的编程语言呢?
- 免安装版SQL中文乱码问题,本地数据库中文乱码?
- Backbone入门基础 - Model与服务器交互
- 取消掉环境变量
- Python图片转换成矩阵,矩阵数据转换成图片
- 用js实现简单的点击返回顶部效果
- js
- ESP8266-SDK创建eclispe工程
- 用VC6命令行编译工程
- 新人报道,前排留个名~
- 本地存储之WebStorage
- LNMP: Call to undefined function mysqli_connect()
- URAL 1057 Amount of Degrees(数位dp)
- js停止(阻止)浏览器继续加载内容