HTML5商城开发五 实现返回页面顶部
本文内容主要是网上参考收集,介绍四种简单的返回页面顶部代码,可以使用简单的HTML锚标记,也可使用Javascript Scroll函数动态返回等等。
一、使用锚标记返回页面顶部
使用HTML锚标记最简单,点击后会在地址栏显示这个锚标记。
需要标记id特麻烦,尤其是每个页面都要使用,顶部展示又不一样。
页面顶部放置:
<a name="top" id="top"></a>
放置位置在<body>标签之后随便找个地方放都可以,只要靠近顶部即可。
页面底部放置:
<a href="#top" target="_self">返回顶部</a>
二、使用Javascript Scroll函数返回顶部
scrooll函数用来控制滚动条的位置,有两种很简单的实现方式:
方式1:
- <a href="javascript:scroll(0,0)" mce_href="javascript:scroll(0,0)">返回顶部</a>
scroll第一个参数是水平位置,第二个参数是垂直位置,比如要想定位在垂直50像素处,改成scroll(0,50)就可以了。
方式2:
本方式是渐进式返回顶部,要好看一些,代码如下:
- function pageScroll() {
- window.scrollBy(0,-10);
- scrolldelay = setTimeout('pageScroll()',100);
- }
- <a href="pageScroll();" mce_href="pageScroll();">返回顶部</a>
这样就会动态返回顶部,不过虽然返回到顶部但是代码仍在运行,还需要在pageScroll函数加一句给停止掉。
- if(document.body.scrollTop==0) clearTimeout(scrolldelay);
三、使用Onload加上scroll功能实现动态返回顶部
1、首先在网页BODY标签结束之前加上:
<div id="gotop">返回顶部</div>
2、再调用以下JS脚本部分:
- BackTop=function(btnId){
- var btn=document.getElementById(btnId);
- var d=document.documentElement;
- window.onscroll=set;
- btn.onclick=function (){
- btn.style.display="none";
- window.onscroll=null;
- this.timer=setInterval(function(){
- d.scrollTop-=Math.ceil(d.scrollTop*0.1);
- if(d.scrollTop==0) clearInterval(btn.timer,window.onscroll=set);
- },10);
- };
- function set(){btn.style.display=d.scrollTop?'block':"none"}
- };
- BackTop('gotop');
对Z-BLOG而言,可以放到$(document).ready(function(){....函数中,也可以独立存成一个js文件,比如gotop.js,再通过:
<SCRIPT src="/js/gotop.js" type=text/javascript></SCRIPT>
来调用,当然了位置最好放在“返回顶部”标签的下面,该调用方法已假设路径为JS,其它位置请自行修改。
四、以一定的速度滑动返回顶部
$(".totop").click(function () {
var speed = ;//滑动的速度
$('html,body').animate({ scrollTop: }, speed);//去顶部
$('html,body').animate({ scrollTop: $('#footer').offset().top }, speed);//去底部
});
最喜欢这种效果,简单又能动态往上滚动。
主要参考:
http://www.mediacollege.com/internet/javascript/page/scroll.html
http://blog.csdn.net/w3031213101/article/details/6363858
最新文章
- 关于Finereport移动端报表二次开发的两个小例子
- [leetcode]Binary Tree Maximum Path Sum
- HTTP 405 错误 – 方法不被允许 (Method not allowed)
- OpenCV CommandLineParser 的用法
- C#中string[ ] args是什么意思,又有什么用呢
- C# 堆和栈的区别-该文转自:http://www.itcodes.cn/746.html | 程序人生
- Android系统简介(中):系统架构
- 网关协议学习:CGI、FastCGI、WSGI、uWSGI
- python中打印文件名,行号,路径
- python语言学习1——初识python
- wpf阻止键盘快捷键alt+space,alt+F4
- 剑指offer-数组中出现次数超过一半的数字
- 【Java面试题】19 final,finally和finalize的区别
- thinkphp中用ajax对数据库进行操作
- Swift DispatchQueue
- mssql for xml path使用
- go学习day2
- ConcurrentMap与CopyOnWrite容器
- 【转】线程间操作无效: 从不是创建控件“textBox2” 的线程访问它。
- python语言的优缺点
热门文章
- C#/.NET基于Topshelf创建Windows服务程序及服务的安装和卸载(极速,简洁)
- JavaWeb工程中web.xml基本配置(转载学习)
- js正则表达式——数字校验
- [Spark][Streaming]Spark读取网络输入的例子
- Entity Framework Core系列之DbContext(修改)
- 定时任务 cron命令
- 证明与计算(4): 完美散列函数(Perfect Hash function)
- Vim简明学习
- 爬虫与request模块
- [BZOJ 2242] [SDOI 2011] 计算器