问题

我在个人站点的左下角和右下角各自使用了如下代码来将页面滚动到顶部和底部:

$("body").animate({scrollTop:0},800);

$("body").animate({scrollTop:$(document).height()},800);

最近才忽然发现在Chrome浏览器下,上面的代码没有问题,而在Firefox下却是无效的。百度后才知道,原来这是因为这两个浏览器自身的问题导致的。

对于Chrome而言,支持的是这种写法:

$("body").animate({"scrollTop":top});

而对于Firefox,则是支持如下写法:

$("html").animate({"scrollTop":top});

之前就一直耳闻前端开发需要兼容不同浏览器,非常地麻烦,今天算是见识到了冰山一角。

解决方法

既然这两个浏览器各自支持一种标签选择器,那么只要把两者统合起来即可实现兼容:

$("html,body").animate({"scrollTop":top});

最终,将我的代码改成如下形式便没问题了:

$("html,body").animate({scrollTop:0},800);

$("html,body").animate({scrollTop:$(document).height()},800);

参考链接

随机推荐

  1. jQuery+CSS3实现弯曲文字路径

    jQuery+CSS3实现弯曲文字路径,jQuery,CSS3特效,弯曲文字,文字,文字特效,环形文字. 源码下载:http://www.huiyi8.com/sc/6281.html

  2. Android程序-计算器

    基于Android 2.3.3做的一个练手计算器. 可解析带括号的四则运算. 解析算术表达式的时候,准备调用Webkit通过Js来解析的. 但是2.3.3存在Bug,Js调用Java会导致程序崩溃,  ...

  3. insert …select …带来的死锁问题

    mysql中 insert …select …带来的问题 当使用insert...select...进行记录的插入时,如果select的表是innodb类型的,不论insert的表是什么类型的表,都会 ...

  4. rust borrow and move

    extern crate core; #[deriving(Show)] struct Foo { f : Box<int> } fn main(){ let mut a = Foo {f ...

  5. Chapter2 二分与三分

    T1 给一个N个数的序列,分成M段,每段最大值最小 sol:二分最大值,贪心Check T2 平面上n个点,每个点每s会向周围扩散一个单位长度,两个点联通当且仅当扩散有交点,问什么时候这n个点联通 s ...

  6. 【Lintcode】038.Search a 2D Matrix II

    题目: Write an efficient algorithm that searches for a value in an m x n matrix, return the occurrence ...

  7. poj1966Cable TV Network——无向图最小割(最大流)

    题目:http://poj.org/problem?id=1966 把一个点拆成入点和出点,之间连一条边权为1的边,跑最大流即最小割: 原始的边权赋成inf防割: 枚举源点和汇点,直接相邻的两个点不必 ...

  8. 组播基本概念、IGMP、IGMP监听学习笔记

    前言 一直对组播这个概念迷迷糊糊,特别是交换机处理组播的方式,非常想搞懂但是懒癌发作.这几天终于耐心地看了下有关组播的资料,大致了解了一下同一广播域内组播的相关知识.组播占了计算机网络的一大部分,特别 ...

  9. border-radius实现圆弧阴影效果

    1 原理 利用border-radius实现一个圆弧边的矩形,并添加box-shadow,然后放在目标元素的下方 demo: html <div class="demo1"& ...

  10. Silverlight 5 系列学习之一

    最近公司要用Silverlight 开发并且使用了5 ,以前只学过WPF 没看过Silverlight ,不过在争光中国看了看其概念原来如此.它只不过是轻量级的WPF,且目标在于跨浏览器及平台.费话少 ...