0

私はワードプレスを使用していますが、動的サイドバーがあります。サイドバーには多くのウィジェットがあります。私がやろうとしているのは、画面に表示される divis (ウィジェット) を表示することです (onload - ページが読み込まれた後)。他のウィジェットは非表示になります(不透明度0またはそのようなもの)が、スクロールすると、そのウィジェット(画面に表示されなかった)がフェード効果で表示されます。

すべてのサイドバー ブロックを非表示にするこのコードを使用すると、ロード時に不透明度 0 になります。

画面に表示されているすべてのウィジェットを常に表示し、スクロール時にフェード効果を他のウィジェットに適用するには、助けが必要です。

手伝ってくれてありがとう!

$(document).ready(function(){
tiles = $("#sidebar1 div").fadeTo(0, 0);
});
$(window).scroll(function(d,h) {
    tiles.each(function(i) {
        a = $(this).offset().top + $(this).height();
        b = $(window).scrollTop() + $(window).height();
        if (a < b) $(this).fadeTo(500,1);
    });
});

スクロールの機能が働いています。問題は、ページが完全に読み込まれると、すべてのウィジェットを保持するサイドバー クラスが不透明度 0 (display:none など) になることです。私が必要とするのは、ページの読み込み時に、画面に表示されるすべてのウィジェット (たとえば、10 個のウィジェットのうち 2 個) に不透明度 1 を与えることです。ユーザーがスクロールすると、他のウィジェットがフェード効果で互いに表示されます。手伝ってくれてありがとう!

4

1 に答える 1

0

あなたはこれを試すことができます:

ウィンドウスクロールでこれを確認できます:

 tiles.each(function(){ 
      if($(this).css("opacity") == 0){
         //your hidden div
      }else{
         //your visible div
      }
 });

お役に立てば幸いです。

于 2013-08-23T06:10:10.577 に答える