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();
});
};
});
你可以創建一個plunker或jsfiddle來證明這個問題嗎? – SoluableNonagon 2014-10-03 15:28:22
我不確定它是否與plnkr相關,但我得到一個未定義的位置錯誤:http://lnknk.co/edit/nETvkzqKZvak5B6I4QpV – EmptyPockets 2014-10-03 15:43:10
@EliteOctagon更新,我得到它的工作,但它非常跳動。感謝您的回覆。製作plnkr很有幫助。 – EmptyPockets 2014-10-03 15:51:12