为什么JQuery在IE和FireFox中不起作用?

时间:2014-02-26 15:32:56

标签: javascript jquery html

我在Chrome和Safari中测试并且它正常工作。它只是第一个条件。 我做错什么了吗?抱歉..但我是JQuery的新手。我使用jQuery v1.9.1和IE11这是脚本:

<script>
    jQuery(document).ready(function () {
        jQuery(".next").click(function () {
            var position = $('body').scrollTop();
            if (position == 0) {
                jQuery('html, body').animate({
                    scrollTop: 642
                });
            } else if (position >= 0 && position <= 642) {
                jQuery('html, body').animate({
                    scrollTop: 1735
                });
            } else if (position >= 642 && position <= 1735) {
                jQuery('html, body').animate({
                    scrollTop: 2403
                });
            } else if (position >= 1735 && position <= 2403) {
                jQuery('html, body').animate({
                    scrollTop: 3236
                });
            } else if (position >= 2403 && position <= 3236) {
                jQuery('html, body').animate({
                    scrollTop: 6430
                });
            } else if (position >= 3236 && position <= 6430) {
                jQuery('html, body').animate({
                    scrollTop: 7320
                });
            } else if (position >= 7191) {
                jQuery('html, body').animate({
                    scrollTop: 0
                });
            }
        })
    });
</script>

1 个答案:

答案 0 :(得分:6)

有些浏览器使用body滚动文档,其他浏览器则使用documentElement。 (这实际上是您必须使用'html, body'动画scrollTop

的原因

要以跨浏览器方式获取滚动位置,请使用:

position = document.body.scrollTop || document.documentElement.scrollTop;