0

親の高さを計算して、その下に空のスペースがある場合にのみ左の div がアニメーション化されるようにするにはどうすればよいですか。親の高さが質問の高さ+マージントップよりも大きいことを計算しようとしました。

これは、コードの簡略化されたバージョンです: http://jsfiddle.net/rewsn/6/例として。実際のバージョンでは、質問/回答は AJAX を介して変更されるため、毎回高さを計算する必要があります。

4

2 に答える 2

1

私が正しく理解していれば、以下のような単純な条件で問題が解決するはずです。

if ((y + el.outerHeight()) < $container.height()) {

デモ

var el = $('.answer');
var elpos = el.offset().top;
var $container = $('.container');

$(window).scroll(function() {
    var y = $(this).scrollTop();
    var mTop = y - elpos;

    if ((y + el.outerHeight()) < $container.height()) {
        if (y < elpos) {
            el.stop().animate({
                'margin-top': 0
            }, 500);
        }
        else {
            el.stop().animate({
                'margin-top': y - elpos
            }, 500);
        }
    }
});
于 2012-04-25T23:13:44.630 に答える
0

あなたの言いたいことが 100% わからないのですが、「回答」が「質問」よりも下に押されるのを止めたいですか? このようなもの? http://jsfiddle.net/X3cbB/1/

于 2012-04-25T23:16:59.917 に答える