疯子好好活

前端小记

发布时间:2015年2月14日 / 分类:百宝箱 / 514 次围观 / 抢沙发!

在改一个页面的时候发现了奇怪的问题,绑定onscroll怎么都不成功。

$("#js_box").on("scroll",
    function() {
        #some code
    }
);

开始以为是在调整过程中把overflow-y: scroll;注释了造成的问题,取消注释还是不行。

几经周折后发现,之前绑定的是某个子元素,后来在调整的过程中,把父元素的定位改成了position: absolute;
发现在这种情况下,绑定子元素的onscroll就不成功。

感觉是因为绝对定位下页面整个就跟着往上滑,监测不到子元素的onscroll事件了。
于是改为监测整个窗口的onscroll,搞定。

$(window).on("scroll",
    function() {
        #some code
    }
);

标签:css, onscroll