JQuery .scroll()事件显示隐藏对象不起作用

时间:2015-05-18 02:13:39

标签: javascript jquery css scroll javascript-events

我正在使用.scroll(),以便在滚动过某个点后让图片#mag可见。

            $(window).scroll(function() {
                var y_scroll_pos = window.pageYOffset;
                var scroll_pos_test = 1000;             

                if(y_scroll_pos > scroll_pos_test) {
                    $("#mag").css("visibility","visible");
                }
            });
        <img id= "mag" src="assets/maginatransparent.png" style = "visibility: hidden; position: fixed; height: 40vh; bottom: 30vh; right: 0">

当我运行它时,我没有错误,但即使我滚动超过1000px,事件似乎也没有被触发。

JSFiddle Link:https://jsfiddle.net/k04qck9h/ 请注意,这使用的是span而不是img.

1 个答案:

答案 0 :(得分:2)

您需要使用$(window).scrollTop();

   $(window).scroll(function() {
        var y_scroll_pos = $(window).scrollTop();
        var scroll_pos_test = 1000;             

        if(y_scroll_pos > scroll_pos_test) {
            $("#mag").css("visibility","visible");
        }else{
            $("#mag").css("visibility","hidden");
        }
    });

DEMO