javascript实现博客园页面右下角返回顶部按钮


Posted in Javascript onFebruary 22, 2015

博客园中很多博友的博客中在Page右下角都有个图标,不论屏幕怎么拉伸,都始终停留在右下角。点击后页面置顶。后面想想写一个Demo来实现这种效果吧。

     一. 图标右下角固定.

  1.SS 里面提供了4中布局方式. 其中fixed表示绝对定位元素。所以我们选择使用fixed来实现图标固定.

absolute 生成绝对定位的元素,相对于 static 定位以外的第一个父元素进行定位。 元素的位置通过 "left", "top", "right" 以及 "bottom" 属性进行规定。
fixed 生成绝对定位的元素,相对于浏览器窗口进行定位。 元素的位置通过 "left", "top", "right" 以及 "bottom" 属性进行规定。
relative 生成相对定位的元素,相对于其正常位置进行定位。 因此,"left:20" 会向元素的 LEFT 位置添加 20 像素。
static 默认值。没有定位,元素出现在正常的流中(忽略 top, bottom, left, right 或者 z-index 声明)。
inherit 规定应该从父元素继承 position 属性的值。

        2.定代码如下。Button按钮将始终置于屏幕右下角。不论是拖动上下精度条还是拉伸浏览器窗口大小.

#myTopBtn{

        bottom: 5px;

        right: 5px;

        position:fixed;

    }

二. 实现点击后回到页面最上角.

1. 要想回到屏幕最上角就得小了解如何通过JavaScript还操作拖动条的上下移动.JavaScript提供了scrollby和scroll方法.

window.scrollBy(0,-30)  //屏幕上移30像素点

window.scroll(0,0) // 屏幕回到最上角

2. 上面已经提到了如何移动拖动条,那么如何实现按照一定的速度移动到page页顶部呢。那么就要借助setInterval和clearInterval方法. 实现没10毫秒屏幕上移30个像素点。

<body>

  <div id="myDiv" >

  </div>

  <button id="myTopBtn" onclick="TopFunc()">To Top</button>

</body>
 
var myVar;

    function TopFunc(){

        myVar=setInterval(EachScrollBy,10);    

    }
    function EachScrollBy(eachHeight){

        if(document.documentElement.scrollTop<=0){

            clearInterval(myVar);

        }else{

            window.scrollBy(0,-30);

        }

    }

        三. 扩展

实现了置顶按钮。那么我们如何实现点击按钮屏幕置底呢.其实原理差不多,这里就不写demo了。给大家提供一些属性做参考.

      网页可见区域宽:document.body.clientWidth
网页可见区域高:document.body.clientHeight

网页可见区域宽:document.body.offsetWidth (包括边线的宽)

网页可见区域高:document.body.offsetHeight (包括边线的宽)

网页正文全文宽:document.body.scrollWidth

网页正文全文高:document.body.scrollHeight

网页被卷去的高:document.body.scrollTop

网页被卷去的左:document.body.scrollLeft

网页正文部分上:window.screenTop

网页正文部分左:window.screenLeft

屏幕分辨率的高:window.screen.height

屏幕分辨率的宽:window.screen.width

屏幕可用工作区高度:window.screen.availHeight

屏幕可用工作区宽度:window.screen.availWidth

以上就是本文的全部内容了,希望爱玩博客的童鞋们喜欢。

Javascript 相关文章推荐
jQuery 1.3 和 Validation 验证插件1.5.1
Jul 09 Javascript
JQuery 获得绝对,相对位置的坐标方法
Feb 09 Javascript
jQuery 技巧小结
Apr 02 Javascript
Jquery写一个鼠标拖动效果实现原理与代码
Dec 24 Javascript
JS实现的几个常用算法
Nov 12 Javascript
AngularJS框架的ng-app指令与自动加载实现方法分析
Jan 04 Javascript
利用n工具轻松管理Node.js的版本
Apr 21 Javascript
JavaScript实现焦点进入文本框内关闭输入法的核心代码
Sep 20 Javascript
详解如何使用webpack打包多页jquery项目
Feb 01 jQuery
vue-cli3跨域配置的简单方法
Sep 06 Javascript
微信小程序实现锚点功能
Nov 20 Javascript
Vue 使用typescript如何优雅的调用swagger API
Sep 01 Javascript
JS+CSS实现感应鼠标渐变显示DIV层的方法
Feb 20 #Javascript
js实现图片和链接文字同步切换特效的方法
Feb 20 #Javascript
jQuery实现渐变弹出层和弹出菜单的方法
Feb 20 #Javascript
JavaScript获取文本框内选中文本的方法
Feb 20 #Javascript
jQuery常用数据处理方法小结
Feb 20 #Javascript
jQuery数据缓存用法分析
Feb 20 #Javascript
jQuery性能优化技巧分析
Feb 20 #Javascript
You might like
php下使用无限生命期Session的方法
2007/03/16 PHP
php获取百度收录、百度热词及百度快照的方法
2015/04/02 PHP
Zend Framework教程之前端控制器Zend_Controller_Front用法详解
2016/03/07 PHP
php版微信小店调用api示例代码
2016/11/12 PHP
Javascript的IE和Firefox兼容性汇编
2006/07/01 Javascript
JQuery 表单中textarea字数限制实现代码
2009/12/07 Javascript
JQuery Tips(4) 一些关于提高JQuery性能的Tips
2009/12/19 Javascript
JS input文本框禁用右键和复制粘贴功能的代码
2010/04/15 Javascript
基于jquery的滚动新闻列表
2010/06/19 Javascript
jquery控制select的text/value值为选中状态
2014/06/03 Javascript
jquery结合CSS使用validate实现漂亮的验证
2015/01/29 Javascript
jQuery+AJAX实现无刷新下拉加载更多
2015/07/03 Javascript
Node.js与Sails ~项目结构与Mvc实现及日志机制
2015/10/14 Javascript
如何通过js实现图片预览功能【附实例代码】
2016/03/30 Javascript
JS键盘版计算器的制作方法
2016/12/03 Javascript
关于Vue的路由权限管理的示例代码
2018/03/06 Javascript
详解vue-cli 构建项目 vue-cli请求后台接口 vue-cli使用axios、sass、swiper
2018/05/28 Javascript
vue 使用html2canvas将DOM转化为图片的方法
2018/09/11 Javascript
Vue运用transition实现过渡动画
2019/05/06 Javascript
Node.JS发送http请求批量检查文件中的网页地址、服务是否有效可用
2019/11/20 Javascript
nodeJs的安装与npm全局环境变量的配置详解
2020/01/06 NodeJs
python发送邮件接收邮件示例分享
2014/01/21 Python
python正常时间和unix时间戳相互转换的方法
2015/04/23 Python
python中常用的九种预处理方法分享
2016/09/11 Python
对命令行模式与python交互模式介绍
2018/05/12 Python
在Pycharm中项目解释器与环境变量的设置方法
2018/10/29 Python
react+django清除浏览器缓存的几种方法小结
2019/07/17 Python
Python实现自动访问网页的例子
2020/02/21 Python
聚网科技C++面试笔试题
2015/09/01 面试题
教育实习生的自我评价分享
2013/11/21 职场文书
大学同学十年聚会感言
2014/02/21 职场文书
三八妇女节活动主持词
2014/03/17 职场文书
公安机关纪律作风整顿剖析
2014/10/10 职场文书
质检员岗位职责范本
2015/04/07 职场文书
地道战观后感500字
2015/06/04 职场文书
学校中层领导培训心得体会
2016/01/11 职场文书