2014-10-03 213 views
0

我試圖揭示項目,因爲他們在我的角度應用程序中滾動時進入視圖。問題是,只要第一個元素顯示出來,所有元素似乎都會顯露出來。我究竟做錯了什麼?爲什麼這個指令只適用於一個元素?

這裏有一個plnkr:http://plnkr.co/edit/nETvkzqKZvak5B6I4QpV

更新:我得到它的工作。有沒有人有任何關於如何提高性能的想法。這很刺激。

.directive("scrollFade", function($window) { 
    return function(scope, element, attrs) { 
     angular.element($window).bind("scroll", function() { 
     var bottom_of_object = $(element).offset().top + $(element).outerHeight(); 
     var bottom_of_window = $(window).scrollTop() + $(window).height(); 
     if (bottom_of_object < bottom_of_window) { 
      //in view 
      element.css('opacity', 1); 
     } else { 
      //outside of view 
      element.css('opacity', 0); 
     } 
     scope.$apply(); 
     }); 
    }; 
    }); 
+0

你可以創建一個plunker或jsfiddle來證明這個問題嗎? – SoluableNonagon 2014-10-03 15:28:22

+0

我不確定它是否與plnkr相關,但我得到一個未定義的位置錯誤:http://lnknk.co/edit/nETvkzqKZvak5B6I4QpV – EmptyPockets 2014-10-03 15:43:10

+0

@EliteOctagon更新,我得到它的工作,但它非常跳動。感謝您的回覆。製作plnkr很有幫助。 – EmptyPockets 2014-10-03 15:51:12

回答

相關問題