1

さまざまなサイズの div があると仮定します。

<div class="mydiv" style="height:500px;">
</div>
<div class="mydiv" style="height:212px;">
</div>
<div class="mydiv" style="height:58px;>
</div>

下にスクロールしたときに、現在表示されている/または一番上にある# divがわかるようにするにはどうすればよいですか? 一度に存在できるアクティブな div は 1 つだけであると想定します (最上位の div)。できればJQueryを使用してください。

4

2 に答える 2

0

または、サードパーティのライブラリから余分な依存関係が必要ない場合は、$('#container').scroll(eventHandler)イベントにサブスクライブし、の子をループしてe.target、コンテナーの上部にあるものを見つけることができます。

$(".container").scroll(function (e) {
    var elementOnTheTop;
    $(e.target).children().each(function (index, element) {
        var $element = $(element);
        if ($element.position().top <= 0 && $element.height() > 0) {
            elementOnTheTop = $element;
        }
    });

    //elementOnTheTop is what you are looking for
});

デモJSFiddle

于 2013-09-17T04:50:07.353 に答える