2013-05-06 2 views
1

저는 각진 응용 프로그램 용 모듈을 만들었으며 두 지시문을 모두 연관 시켰습니다.동일한 모듈에 대해 여러 개의 지시문이 있습니다.

스크롤이 무한 페이지 매김을 위해 페이지의 맨 아래에 도달하면 하나가 (트리거 됨) 트리거됩니다. 다른 하나 (fromTop)는 페이지의 "상단으로 이동"링크를 숨기거나 표시하는 데 사용할 수있는 "상단"또는 "하단"을 트리거합니다. 이것이 내가 설정 한 방법입니다 :

불행히도, 이것은 작동하지 않습니다. "whenScrolled"지시문이 "fromTop"을 덮어 쓰고 fromTop이 호출되지 않는 것 같습니다. 그러나 "whenScrolled"를 삭제하면 "fromTop"은 정상적으로 호출됩니다. 왜 이런거야?

답변

2

이것은 angular.js와 전혀 관련이 없습니다.

문제 : DOM 요소에 지시문을 첨부 할 때마다 window.onscroll 함수를 덮어 씁니다.이 함수는 마지막으로 적용한 지시문 만 작동하는 효과가 있습니다. 하나의 onscroll 기능 만있을 수 있습니다.

당신은 몇 가지 방법이 문제를 해결해야합니다

  • onscroll을 캡처 한 후 모든 지침에 대한 변경 사항을 전파 추가 할 각 서비스를 사용.
  • 동일한 기능을하는 JavaScript 라이브러리를 사용하십시오.
  • 세 번째 옵션을 파기 한 후에 Angular는 동일한 기능을 수행하는 bind 기능을 가지고 있습니다. 옵션 2로서.
관련 문제