Chrome 플러그인을 개발 중입니다. 모든 태그에 클래스 이름을 주입합니다.자바 스크립트 : 데이터로드 여부를 확인하는 방법
아래로 스크롤 할 때 콘텐츠가 나중에로드되는 페이스 북과 같은 웹 페이지에 문제가 있습니다.
새로운 콘텐츠가로드되었는지 확인하는 방법이 있는지 알고 싶습니다.
는 지금까지 내가 찾을 수있는 유일한 해결책은
setInterval(function() {
감사합니다.
Chrome 플러그인을 개발 중입니다. 모든 태그에 클래스 이름을 주입합니다.자바 스크립트 : 데이터로드 여부를 확인하는 방법
아래로 스크롤 할 때 콘텐츠가 나중에로드되는 페이스 북과 같은 웹 페이지에 문제가 있습니다.
새로운 콘텐츠가로드되었는지 확인하는 방법이 있는지 알고 싶습니다.
는 지금까지 내가 찾을 수있는 유일한 해결책은
setInterval(function() {
감사합니다.
Chrome이 지원하는 DOMSubtreeModified
이벤트 (source)입니다 (자세한 내용은 this answer 참조). 코드는 다음과 비슷한 모습이 될 것입니다 Konrad Dzwinel
말했다
document.addEventListener('DOMSubtreeModified', function() {
$("*:not(.my_class)").addClass('my_class');
}, true);
으로, 당신은 몇 가지 Mutation Event
청취자
document.addEventListener("DOMSubtreeModified", methodToRun);
를 사용하지만 Mutation Events
가 정말 잘 길들여 할 수없는 성능 돼지를 참고 할 수 있습니다 (그들은 너무 자주 불을 뿜어 페이지를 느리게 만든다). 따라서 1 년 전부터 사용 중단되었으며 실제로 필요할 때만 사용해야합니다. 그러나 그들은 작동합니다.
크롬 확장 프로그램에서이 기능을 사용하려면 DOM Level 4의 새롭고 반짝이는 Mutation Observers
을 사용할 수 있습니다 (링크를 따라 가면 많이 설명됩니다). DOMSubtreeModified
이 수천 번씩 발사 된 경우 MutationObserver
은 수정 사항이 모두 포함되어 액세스 할 수 있도록 한 번만 발사됩니다.
작품에 대한 (2012/06 현재) :
window.WebKitMutationObserver
)
감사 @kdzwinel 실제로 작동합니다. "DOMNodeInserted"를 사용하고 있습니다. 유일한 점은로드가 많이 느려지는 느낌이 들지만 확실하지 않습니다. 가능하다고 생각하십니까? – lorussian
문서가 끝날 때 스크립트가 실행되도록하십시오 (또는 가능하다면 문서가 완전히로드 된 후 일정 시간이 지났음에도 불구하고). DOM을 처음 생성 할 때와 Facebook을 시작할 때 'DOMSubtreeModified'가 여러 번 실행될 가능성이 있습니다 여러 AJAX 호출을 사용하여 페이지를로드하고 작성합니다. 일반적으로 확장 기능은 자바 스크립트 무거운 웹 사이트와 웹 앱에 상당히 부담이 될 것입니다. –