の先頭に次のコードは、多くのことを行うことを目的としている特定のdivサイトの各セクションに1つずつあります - 各セクションはarticle
です)、それは親のarticle
であり、それはoffsetTop
です。
3その後、我々は.popup_next
を).offsetTop値に30pxを追加し、スクロール位置がその範囲の外のどこかであれば、我々fadeIn()
その後、私たちのスクロール現在のスクロール位置がoffsetTopより大きく$offsetHide
未満であるため、場合、私たち$offsetHide
ことを呼び出しますdiv。jQueryのフェードイン()HTMLセクション
申し訳ありませんが、より具体的な詳細は不足していますが、次のコードは上記の効果を達成するためのものです。私はjavascriptのコンソールの中でそれをチェックして、エラーはありません。残念ながら、構文にはエラーはないようですが、何も起こっていません。誰でも自分のコードでエラーを見つけることができますか?この関数はウィンドウ全体のスクロールを探していない場合、エラーが$(".popup_next").scroll(function() {
を使用してありますが、むしろのみ.popup_next
要素のスクロール:
* EDIT:
は、下記を参照してください? *
* EDIT#2:ここでは動作しない効果の一例である:http://jsfiddle.net/XG24G、ここでは、私は、変数を削除し、それらを単純な静的値を作成する際に正常に動作し、それの例では、($(this)
が使用されていないことを許可されましたそれは)誤ってすべてのトリガ:http://jsfiddle.net/UdXvM/1 *
$(window).scroll(function(){
// gets the position of the window
var y = $(window).scrollTop();
$(".popup_next").scroll(function() {
var $parentOffset = $(this).parent('article').offsetTop();
var $hideOffset = $parentOffset + 30;
if(y > ($parentOffset) && y < ($hideOffset)) {
$(this).fadeIn('350');}
if(y > ($hideOffset)) {
$(this).fadeOut('500');}
if(y < ($parentOffset)) {
$(this).fadeOut('500');}
});
});
はあなた 'フェードインする前に(' fadeOut'をか)隠さ.popup_next'していますか?可視の要素にフェードインするだけで効果がないからです。 –
デフォルトではCSSによって 'display:none'が隠されています。この効果はスクロール位置が '$ parentOffset'と' $ hideOffset'値の間にあるときだけトリガされます。 – Brian
これの例をjsfiddleに投稿していますか?答えは、それをしていない限りbelove。 – OptimusCrime