2011-02-10 23 views
1

ウェブページの中心をスクロールしたかどうかを知る方法はありますか?つまり、スクロールしたときにウェブページの半分がスクロールしてスクロールバーがブラウザウィンドウの下半分にありますか?ページの下半分を通過するときにJQuery関数をトリガーする

私はこれを引き起こすことができます: $( '。パイナップル - マン')。show();私がページの半分を過ぎてスクロールダウンしたら?

これはまったく可能ですか?

あなたの助けがとても親切です!

+1

[jQueryのトリガー・アクションの可能性が重複する場合、ユーザーがスクロールし、特定の部分の過去(http://stackoverflow.com/questions/4627203/jquery-trigger-action-when-a-user-scrolls-past-a-part-of-the-page) –

+2

パイナップルの男のショー! –

答えて

7

.scrollTop()を使用して、要素のピクセル量をスクロールさせることができます。スクロールイベントを聞くには、.scroll()を使用します。

あなたは途中を特定したい、スクロールを使用する高さ:

$(window).scroll(function() { 
    if ($(window).scrollTop() > $('body').height()/2) { 
    $('.pineapple-man').show(); 
    } 
}); 

あなたはウィンドウ全体/ボディよりも他のいくつかの要素をスクロールしている場合は、セレクタを変更すること自由に感じなさい。

.show()呼び出しの後、次を追加することにより、scrollイベントリスナーの除去を追加し、示す1タイマーを作るために:

$(window).unbind('scroll'); 
+0

ちょっと@jawaあなたのソリューションは非常にうまくいった!あなたの親切な助けのためにso0ありがとう! – steve

+0

ありがとうございました。そして、あなたは大歓迎です! – Jawa

0

あなたはそれまでスクロールダウンした場合、あなたは私はあなたがこのような何かをしたいと思います

jQuery('selector').focus(function() { 
    jQuery('.page').show(); 
}); 
1

(jQueryのが彼らのコメントのために使用されますと同じように)フォーカスイベントを使用することができます。

if($(document).scrollTop() > $(document).height()/2){ 
    $('.pineapple-man').show(); 
} 

scrollTop()は現在の水平位置を取得し、height()はドキュメントの高さを定義します。

関連する問題