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 相关文章推荐
javascript开发中因空格引发的错误
Nov 08 Javascript
JavaScript 基础篇之对象、数组使用介绍(三)
Apr 07 Javascript
jQuery插件jQuery-JSONP开发ajax调用使用注意事项
Nov 22 Javascript
Node.js 异步编程之 Callback介绍(一)
Mar 30 Javascript
JavaScript使ifram跨域相互访问及与PHP通信的实例
Mar 03 Javascript
JavaScript入门系列之知识点总结
Mar 24 Javascript
浅谈JavaScript 覆盖原型以及更改原型
Aug 31 Javascript
页面间固定参数,通过cookie传值的实现方法
May 31 Javascript
微信小程序中时间戳和日期的相互转换问题
Jul 09 Javascript
JavaScript中 ES6变量的结构赋值
Jul 10 Javascript
JavaScript设计模式之原型模式分析【ES5与ES6】
Jul 26 Javascript
微信小程序使用map组件实现路线规划功能示例
Jan 22 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性能优化的介绍
2013/06/20 PHP
php 截取utf-8格式的字符串实例代码
2016/10/30 PHP
PHP实现的redis主从数据库状态检测功能示例
2017/07/20 PHP
Laravel5.1 框架Request请求操作常见用法实例分析
2020/01/04 PHP
优化javascript的执行速度
2010/01/23 Javascript
jquery 关于event.target使用的几点说明介绍
2013/04/26 Javascript
键盘上一张下一张兼容IE/google/firefox等浏览器
2014/01/28 Javascript
Javascript学习笔记之 对象篇(一) : 对象的使用和属性
2014/06/24 Javascript
浅析angularJS中的ui-router和ng-grid模块
2016/05/20 Javascript
微信小程序实战之自定义toast(6)
2017/04/18 Javascript
Vue.js 中取得后台原生HTML字符串 原样显示问题的解决方法
2018/06/10 Javascript
使用Angular 6创建各种动画效果的方法
2018/10/10 Javascript
浅谈JS中几种轻松处理'this'指向方式
2019/09/16 Javascript
vue+AI智能机器人回复功能实现
2020/07/16 Javascript
vue切换菜单取消未完成接口请求的案例
2020/11/13 Javascript
[01:14]DOTA2 7.22版本新增神杖效果展示(智力英雄篇)
2019/05/29 DOTA
python进阶教程之词典、字典、dict
2014/08/29 Python
Python代码调试的几种方法总结
2015/04/15 Python
基于Python实现一个简单的银行转账操作
2016/03/06 Python
Python字典,函数,全局变量代码解析
2017/12/18 Python
用python实现百度翻译的示例代码
2018/03/09 Python
python 识别图片中的文字信息方法
2018/05/10 Python
Python玩转加密的技巧【推荐】
2019/05/13 Python
python使用socket实现的传输demo示例【基于TCP协议】
2019/09/24 Python
Flask项目中实现短信验证码和邮箱验证码功能
2019/12/05 Python
Django接收照片储存文件的实例代码
2020/03/07 Python
Python 程序员必须掌握的日志记录
2020/08/17 Python
python实现每天自动签到领积分的示例代码
2020/08/18 Python
Carter’s OshKosh加拿大:购买婴幼儿服装和童装
2018/11/27 全球购物
有趣的睡衣和礼物:LazyOne
2019/11/27 全球购物
自动化系在校本科生求职信
2013/10/23 职场文书
新学期开学寄语
2014/01/18 职场文书
最新奶茶店创业计划书范文
2014/02/08 职场文书
《地震中的父与子》教学反思
2014/04/10 职场文书
优秀班组长事迹
2014/05/31 职场文书
班风口号
2014/06/18 职场文书