オフセットを使用してスクロール機能で2つの位置を設定する際に問題があります。スクロール機能で下位の位置からjQuery .offsetが機能していませんか?
あなたはこのフィドルを開くと、... http://jsfiddle.net/motocomdigital/SGCHt/12/
を参照してください下に、以下のスクリーンショットの同様のサイズにフィドルプレビュービューポートを減らすことができますので、私はバイオリンを作成しました。
私の問題
あなたは、彼らがであるかスクロールポイントに応じて、私は青色のタブの位置を制御するために条件文を使用しています見ることができます。
黄色の列はタブのコンテナを表し、青色のタブが黄色のコンテナの外に出ないように、if else
ステートメントを使用して底部の位置を制御します。
しかし、私はこれを動作させることはできません。私のボトムポジションオフセットは機能しません。
var $tab = $('.tab-button');
$(window).bind("resize.browsersize", function() {
var windowHalf = $(window).height()/2,
content = $("#content"),
pos = content.offset();
$(window).scroll(function(){
if ($(window).scrollTop() >= pos.top + windowHalf){
$tab.removeAttr('style').css({ position:'fixed', top:'50%'});
} else if ($(window).scrollTop() >= pos.bottom + windowHalf){
$tab.removeAttr('style').css({ position:'absolute', bottom:'0px'});
} else {
$tab.removeAttr('style').css({ top: $(window).height() + 'px' });
}
});
}).trigger("resize.browsersize");
誰も私が間違って行くよどこに私は理解して助けてください。
おかげ ジョシュ
+1問題 – ManseUK