JQuery 动画卷页 返回顶部 动画特效(兼容Chrome)


Posted in Javascript onFebruary 15, 2010

首先给这些‘返回页首'的链接加上个Class:
<a href="#" class="backtotop" target="_self">返回页首↑</a>
<!--把所有返回页首的链接加上class,例如:backtotop-->然后加入下面jQuery代码,你可以把这行代码放在</body>前,或者其它位置。当然你还要在<head>里包含jQuery库文件。(

jQuery(document).ready(function() { 
jQuery('.backtotop').click(function(){ 
jQuery('html').animate({scrollTop:0}, 'slow'); 
}

就这么简单?基本上是!但是使用jQuery('html')在Safari和Chrome(记得在什么地方看到过:chrome使用的是safari的核)下选择不到我们要的对象。好在在这两种浏览器下,我们可以使用jQuery('body')来替代。因此为了让代码的兼容性更强,我们可以加入对浏览器的判断,这里使用到jQuery提供jQuery.browser的方法。注意: 在jQuery1.3里,这种方法已经不建议使用。jQuery1.3新增jQuery.support的方法,用于展示不同浏览器各自特性和bug的属性集合,也就是说jQuery1.3不在建议对浏览器进行判断,而建议直接对某个特性进行判断。但是我不知道这个选择器的问题应该属于哪个特性,因此,我还是使用旧的方法。(jQuery.browser的方法在jQuery1.3里还是支持的)
jQuery(document).ready(function() { 
jQuery('.backtotop').click(function(){ 
if(jQuery.browser.safari) {//这里判断浏览器是否为safari 
jQuery('body').animate({scrollTop:0}, 'slow'); 
return false;//返回false可以避免在原链接后加上# 
} 
else{ 
jQuery('html').animate({scrollTop:0}, 1500); 
return false; 
} 
}); 
});

这上述代码里,我用到jQuery('body').animate({scrollTop:0}, 'slow'); 我们可以根据实际需要更改卷页的速度,你可以用'slow'、'fast'、或者用具体数字,例如1000(代表一秒,注意用具体数字时不用加单引号)。 另外,{scrollTop:0}表示返回页首,如果你只是想让页面卷到你要的特定位置,我们可以使用标签(ID)的方法,例如:要移到某个ID为'myID'的区域(<div id="myID">....</div>)顶部,我们可以使用类似的方法,但是要先计算这个区域距离页首的距离,代码如下:
jQuery('body').animate({scrollTop:jQuery('#myID').offset().top}, 'slow'); 
//jQuery('#myID').offset().top可以计算ID为myID的区域里页首的距离
Javascript 相关文章推荐
javaScript 读取和设置文档元素的样式属性
Apr 14 Javascript
基于jquery1.4.2的仿flash超炫焦点图播放效果
Apr 20 Javascript
Eval and new funciton not the same thing
Dec 27 Javascript
简单的代码实现jquery定时器
Nov 17 Javascript
javascript实现修改微信分享的标题内容等
Dec 11 Javascript
JS判断输入字符串长度实例代码(汉字算两个字符,字母数字算一个)
Aug 02 Javascript
JS滚动到指定位置导航栏固定顶部
Jul 03 Javascript
mui上拉加载更多下拉刷新数据的封装过程
Nov 03 Javascript
微信小程序如何像vue一样在动态绑定类名
Apr 17 Javascript
小程序开发基础之view视图容器
Aug 21 Javascript
TypeScript的安装、使用、自动编译的实现
Apr 10 Javascript
vue-cli中实现响应式布局的方法
Mar 02 Vue.js
jQuery 处理表单元素的代码
Feb 15 #Javascript
jQuery 树形结构的选择器
Feb 15 #Javascript
jQuery 处理网页内容的实现代码
Feb 15 #Javascript
JS getMonth()日期函数的值域是0-11
Feb 15 #Javascript
不同浏览器对回车提交表单的处理办法
Feb 13 #Javascript
Jquery iframe内部出滚动条
Feb 11 #Javascript
jquery 问答知识整理
Feb 11 #Javascript
You might like
探讨:array2xml和xml2array以及xml与array的互相转化
2013/06/24 PHP
PHP扩展模块Pecl、Pear以及Perl的区别
2014/04/09 PHP
php对象和数组相互转换的方法
2015/05/12 PHP
40款非常棒的jQuery 插件和制作教程(系列二)
2011/11/02 Javascript
jQuery.extend 函数详解
2012/02/03 Javascript
Jquery 模板数据绑定插件的使用方法详解
2013/07/08 Javascript
javascript 实现字符串反转的三种方法
2013/11/23 Javascript
Jquery创建一个层当鼠标移动到层上面不消失效果
2013/12/12 Javascript
js实现回放拖拽轨迹从过程上进行分析
2014/06/26 Javascript
javascript格式化指定日期对象的方法
2015/04/21 Javascript
7个jQuery最佳实践
2016/01/12 Javascript
ionic js 复选框 与普通的 HTML 复选框到底有没区别
2016/06/06 Javascript
AngularJS基础 ng-hide 指令用法及示例代码
2016/08/01 Javascript
Javascript+CSS3实现进度条效果
2016/10/28 Javascript
又一款MVVM组件 构建自己的Vue组件(2)
2017/03/13 Javascript
使用JQ完成表格隔行换色的简单实例
2017/08/25 Javascript
微信小程序判断页面是否从其他页面返回的实例代码
2019/07/03 Javascript
JS中数组实现代码(倒序遍历数组,数组连接字符串)
2019/12/29 Javascript
vue实现短信验证码输入框
2020/04/17 Javascript
一篇不错的Python入门教程
2007/02/08 Python
通过mod_python配置运行在Apache上的Django框架
2015/07/22 Python
Python根据指定日期计算后n天,前n天是哪一天的方法
2018/05/29 Python
Tensorflow 合并通道及加载子模型的方法
2018/07/26 Python
详解django2中关于时间处理策略
2019/03/06 Python
快速解决docker-py api版本不兼容的问题
2019/08/30 Python
Python Des加密解密如何实现软件注册码机器码
2020/01/08 Python
python批量生成条形码的示例
2020/10/10 Python
Html+Css+Jquery实现左侧滑动拉伸导航菜单栏的示例代码
2020/03/17 HTML / CSS
安康杯竞赛活动总结
2014/05/05 职场文书
学校安全工作汇报材料
2014/08/16 职场文书
陈安之励志演讲稿
2014/08/21 职场文书
2014年学生管理工作总结
2014/12/20 职场文书
离婚协议书的范本
2015/01/27 职场文书
个人工作决心书
2015/09/22 职场文书
IIS服务器中设置HTTP重定向访问HTTPS
2022/04/29 Servers
Apache自带的ab压力测试工具的实现
2022/07/23 Servers