"inview"사용자 지정 이벤트 (https://github.com/protonet/jquery.inview)에 의해 트리거 될 때 동적으로로드되는 콘텐츠 (Infinite Scroll 스크립트를 통해 http://www.infinite-scroll.com/)를 지정하려고합니다.Infinite Scroll + .on() function trouble
내 코드는 다음과 같습니다
$(document).on("inview", ".attachment-portfoliosmall", function(e) {
if($.data(this, "styleappended")) {
return true;
}
$.data(this, "styleappended", true);
$(".attachment-portfoliosmall").css('visibility','visible').hide().fadeIn('slow');
$(".attachment-portfoliosmall").parent(".portfoliopreload").css("background", "none");
});
당신은 분명히 볼 수 있듯이, $ .DATA 루틴은 CSTE 연구진() 이벤트 핸들러가 두 번 이상 실행되지 않도록하기 위해 사용된다 선택 필터의 각 요소
이 코드는 다음 페이지의 동적으로로드 된 내용이 문서에 추가되면 .on() 루틴이 새로 추가 된 요소가 아닌 모든 단일 요소에서 두 번 실행됩니다 추가 요소. hxxp :이 코드는 라이브가 어디
당신은 내가 내 웹 사이트로 이동하여 무슨 뜻인지 볼 수 있습니다 다음 페이지로 이동하면 //www.riddlepark.fm/
, 당신은 모든 요소가 퇴색 볼 수 있습니다 .on() 이벤트 핸들러로 인해 발생하는 다시 시작 및 다시 시작.
어떻게 이전 페이지의 이전에 처리 된 요소에서 실행되지 않도록 할 수 있습니까?
엘리먼트 클래스에 'loaded'를 추가하고 필터링하는 것을 고려 했습니까? –
코드에서 그 사실을 실증 해 주시겠습니까? :) 나는 아주 새로운 javascript와 심지어 무언가 간단합니다. –