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 相关文章推荐
JQuery浮动DIV提示信息并自动隐藏的代码
Aug 29 Javascript
使用jquery mobile做幻灯播放效果实现步骤
Jan 04 Javascript
js修改input的type属性及浏览器兼容问题探讨与解决
Jan 23 Javascript
js处理自己不能定义二维数组的方法详解
Mar 03 Javascript
JavaScript实现向右伸出的多级网页菜单效果
Aug 25 Javascript
干货分享:让你分分钟学会javascript闭包
Dec 25 Javascript
JS简单实现仿百度控制台输出信息效果
Sep 04 Javascript
vue2.0父子组件及非父子组件之间的通信方法
Jan 21 Javascript
使用Node.js实现ORM的一种思路详解(图文)
Oct 24 Javascript
使用Vue自定义指令实现Select组件
May 24 Javascript
使用微信小程序开发弹出框应用实例详解
Oct 18 Javascript
JavaScript 数组去重详解
Sep 15 Javascript
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
使用php伪造referer的方法 利用referer防止图片盗链
2014/01/20 PHP
PHP判断变量是否为0的方法
2014/02/08 PHP
PHP中$_FILES的使用方法及注意事项说明
2014/02/14 PHP
php读取和保存base64编码的图片内容
2017/04/22 PHP
laravel框架路由分组,中间件,命名空间,子域名,路由前缀实例分析
2020/02/18 PHP
Javascript MD4
2006/12/20 Javascript
jquery下组织javascript代码(js函数化)
2010/08/25 Javascript
jQuery 1.7.2中getAll方法的疑惑分析
2012/05/23 Javascript
探讨js字符串数组拼接的性能问题
2014/10/11 Javascript
nodejs 提示‘xxx’ 不是内部或外部命令解决方法
2014/11/20 NodeJs
node.js中的buffer.toString方法使用说明
2014/12/14 Javascript
jQuery使用prepend()方法在元素前添加内容用法实例
2015/03/26 Javascript
利用JavaScript的AngularJS库制作电子名片的方法
2015/06/18 Javascript
表单验证插件Validation应用的实例讲解
2015/10/10 Javascript
jQuery中的siblings用法实例分析
2015/12/24 Javascript
JavaScript的兼容性与调试技巧
2016/11/22 Javascript
JavaScript实现经典排序算法之插入排序
2016/12/28 Javascript
原生Aajax 和jQuery Ajax 写法个人总结
2017/03/24 jQuery
浅谈Express异步进化史
2017/09/09 Javascript
Js中使用正则表达式验证输入是否有特殊字符
2018/09/07 Javascript
详解Angular模板引用变量及其作用域
2018/11/23 Javascript
基于Cesium绘制抛物弧线
2020/11/18 Javascript
[28:42]Ti4正赛VG vs NEWBEE1
2014/07/19 DOTA
Python实现115网盘自动下载的方法
2014/09/30 Python
Python实现动态加载模块、类、函数的方法分析
2017/07/18 Python
分享Python切分字符串的一个不错方法
2018/12/14 Python
Python 实现遥感影像波段组合的示例代码
2019/08/04 Python
Python socket模块ftp传输文件过程解析
2019/11/05 Python
序列化Python对象的方法
2020/08/01 Python
python re的findall和finditer的区别详解
2020/11/15 Python
python之openpyxl模块的安装和基本用法(excel管理)
2021/02/03 Python
YOINS官网:时尚女装网上购物
2017/03/17 全球购物
德购商城:德国进口直邮商城
2017/06/13 全球购物
新兵入伍心得体会
2014/09/04 职场文书
党员自评材料范文
2014/12/17 职场文书
uwsgi+nginx代理Django无法访问静态资源的解决
2021/05/10 Servers