如果另一个DIV不在视野中,则显示DIV

时间:2011-12-22 16:23:14

标签: jquery

当你在页面上滚动得足够远时(如果#notification不可见),我怎么能这样做,DIV使用jQuery显示?唯一的条件是我的代码:

jQuery(function($){
    $("#fake").watch('width', function(){
        $('#notibubble').fadeIn(250, function() {
            $('#notibubble').delay(1450).fadeOut(250, function() {
                // Animation complete.
            });
        });
        $("#notification").effect("pulsate", { times:3}, 500);
    });
});

因此,滚动时无法显示,必须首先触发.watch事件。我怎么能这样做?

1 个答案:

答案 0 :(得分:1)

如果watch事件已被触发,您可以使用.data()来存储。然后,只需要在.scroll()函数中检查这一点:

jQuery(function($){
    $("#fake").watch('width', function(){
        // current watch function

        // store that a watch event has fired  
        $("#notification").data('watched', true); 
    });

    $(window).scroll(function(){             
        if($("#notification").data('watched') === true){
            // Check if #notification is out of view by using the window's 
            // scrollTop() and the current position and height of #notification
        }       
    });
});