2016-07-07 5 views

답변

1

MutationObservers 3 개 것들을 볼 수 있습니다 :

  • 속성이 변경
  • 텍스트 내용 변경
  • 자식 목록 변경

그리고 선택적으로 그 변경 이벤트가 버블 될 수, 그래서 타겟과 타겟의 모든 자식을 변경하고 싶다면 그렇게 할 수 있습니다.

이것은 목표를 경청하여 수행 할 수 없다는 것을 의미합니다. 대상의 부모 노드에 옵저버를 연결하고 추적하려는 노드를 제거하는 부모에서 childList 변경을 수신 대기해야합니다.

예컨대 대신 당신이

var observer = new MutationObserver(callback); 
observer(target, { 
    // Fake non-existent option 
    parent: true 
}); 

을 기대하고 있었는지의 가짜 예를의 당신 할

var observer = new MutationObserver(function(mutations){ 
    var targetRemoved = mutations.some(function(mutation){ 
    return mutation.removedNodes.indexOf(target) !== -1; 
    }); 

    if (targetRemoved) callback(); 
}); 
observer(target.parentNode, { 
    childList: true 
}); 
+0

나 노드 제거를 대상으로 듣기 달성하는 데 도움이 될 수 있습니다 해킹의 어떤 종류가 있습니까? 나는이 문제에 붙어있는 경우가있다. –