1

スクロールスパイパラメータに従って再表示するdivがありますが、異なる条件下で表示される別のdivを追加したい場合はどうなりますか?スクロールした後でのみ、両方のdivを同時に表示したくありません。

以下は私のJQです:

<script type='text/javascript'>
    $(document).ready(function() {
            $('.nav').hide();
            $('#sticky-navigation').scrollspy({
                min: $('.nav').offset().top,
                onEnter: function(element, position) {
                    $(".nav").show('hide');
                },

            });
        });
</script>

ありがとう!JOE

4

1 に答える 1

2

ジョー、

投稿のスニペットだけから何をしようとしているのかを正確に知るのは難しいですが、プラグインサイトの色の例を見る必要があると思います:https ://github.com/sxalexander/jquery-scrollspy/blob/ master / examples / colors.html

これは、Javascriptを実行するメインのコードスニペットです。」

$('.color').each(function(i) {
    var position = $(this).position();
    console.log(position);
    console.log('min: ' + position.top + ' / max: ' + parseInt(position.top + $(this).height()));
    $(this).scrollspy({
        min: position.top,
        max: position.top + $(this).height(),
        onEnter: function(element, position) {
            if (console) console.log('entering ' + element.id);
            $("body").css('background-color', element.id);
        },
        onLeave: function(element, position) {
            if (console) console.log('leaving ' + element.id);
            //    $('body').css('background-color','#eee');
        }
    });
});

彼は、「色」のクラスを起動しようとしている各divを指定し、ループを使用して各特定のdivに関数を割り当てます。この例では、彼は背景色を割り当てていますが、div自体を簡単に表示または非表示にすることもできます。ビヘイビアーをループに詰め込むことができない場合は、いつでも各divに個別にscrollspy関数を割り当てることができます。

ポール

于 2012-04-09T22:27:27.590 に答える