초점이 맞지 않으면 DOM에서 사라지는 html 요소를 어떻게 검사 할 수 있습니까?


137

입력에서 테이블 셀로 CSS 속성을 검사하려고합니다. 클릭하면 입력이 나타나고 검사하려고 할 때 초점이 맞지 않으면 사라집니다. 다른 창 (검사관)으로 옮길 때 초점을 잃지 않으려면 어떻게해야합니까?



3
아닙니다,이 질문에 대한 해결책은 여기에 적합하지 않습니다
Rogelio Triviño

1
솔루션은 매우 적합합니다
Jonathan

2
이 답변으로 해결 된 다른 질문이 있으며, 첫 번째 시도 였지만이 상황에서는 브라우저에서 Chrome 개발자 도구 창으로 변경하면 : focus 상태가 사라지고 확인하려는 항목도 사라집니다. 클릭에 표시되고 초점이 맞지 않으면 사라지는 DOM 요소에 대해 이야기하고 있습니다.
Rogelio Triviño

답변:


144

Chrome 브라우저에서 개발자 도구 를 열고 요소 탭 을 선택한 다음 검사하려는 요소의 상위 노드의 상황에 맞는 메뉴를 열고 상황에 맞는 메뉴에서 중단 > 서브 트리 수정을 클릭하십시오 .

그런 다음 페이지를 클릭하면 검사 할 요소가 없어지거나 포커스를 잃지 않고 검사기를 사용할 수 있습니다.

여기에 이미지 설명을 입력하십시오


5
FF에도 방법이 있습니까?
친구

2
고마워요, 시간이 지나면이 솔루션을 얻었고 여기에 질문과 솔루션을 작성하기로 결정했습니다. 시간이 지남에 따라 저의 명성이 여기에 있습니다. "어떻게 2 + 2를 할 수 있습니까? 자바에? "
Rogelio Triviño

검사하려는 요소의 부모 노드를 어떻게 찾습니까? 검사기에서 요소를 열려면 클릭하는 버튼이 있지만 팝업은 DOM에서 관련이 없습니다.
Michael

예, 때로는 자바 스크립트가 본문 또는 관련 최상위 DOM 요소 아래에 직접 새 요소를 만듭니다. 코드에 문제가 없다면, 자바 스크립트가 물건을 생성하는 위치를 알아야합니다. 그렇지 않으면 BODY 하위 트리 수정을 중단하고 정확하게 새로운 DOM 요소를 생성하는 개발 도구를 확인해야합니다 (직접적 일 필요는 없습니다) 부모)
Rogelio Triviño

상황에 맞는 메뉴에 대해 혼란스러워하는 사람들에게는 dom 노드의 가장 왼쪽에있는 3 개의 점 메뉴입니다.
palerdot

92

마우스를 움직이지 않고 바로 가기 키로 JavaScript 실행을 일시 중지하면 사라지는 요소를 캡처 할 수 있습니다. Chrome에서이를 수행하는 방법은 다음과 같습니다.

  1. 개발자 도구를 열고 소스로 이동하십시오.
  2. 스크립트 실행을 일시 중지하는 바로 가기에 유의하십시오 — F8.

    스크립트 실행 일시 중지

  3. 요소를 표시하려면 UI와 상호 작용하십시오.

  4. 을 누르십시오 F8.
  5. 마우스를 움직이고 DOM을 검사하는 방법 요소는 그대로 유지됩니다.

이 트릭은 Firefox 및 기타 최신 브라우저에서도 작동합니다.


12
이것은 많은 것들에 좋지만 디버거가 잠기기 전에 일부 스크립트가 여전히 트리거됩니다. 예를 들어 자동 완성 선택 상자는 스크립트가 일시 중지되기 전에 모든 선택 사항을 숨기므로 대화식으로 스타일을 조정하기가 매우 어렵습니다.
Mir

불행히도 이것은 크롬 만의 힌트이지만, 내가 직접 시도한 이유를 해결했습니다.
webwake

1
@webwake, yes이 특정 예제는 Chrome에 있지만 대부분의 최신 브라우저에서는 키보드 단축키를 사용하여 스크립트 실행을 일시 중지 할 수 있습니다.
mxxk

이것은 완벽하게 작동했으며 너무 쉬웠습니다! 참고 : Mac 용 Chrome에서 스크립트 실행을 일시 중지하려면`⌘ +`입니다.
Jordan Gray

1
@JordanGray를 듣고 반갑습니다. 백 슬래시 를 의미 했습니까 ? 나에게 그것은뿐만 아니라 F8일을 말합니다 .
mxxk

73

다른 모든 방법이 실패하면 콘솔에 다음을 입력하십시오.

setTimeout(() => { debugger; }, 5000)

그런 다음 디버깅하려는 항목이 표시되도록 5 초가 걸립니다 (또는 다른 값으로 값을 변경하십시오).

다른 답변 아무도 나를 위해 일한 - DOM 트리가 (내가 사라진 신경 즉, 물건을) 수정하기 보관 바로 스크립트가 일시 중지하기 전에.


7
이 솔루션은 꽤 해 키지 만 실제로 작동합니다! 감사합니다!
Manjar

1
가장 신뢰할 수있는 간단한 솔루션입니다.
제임스

13

이것이 현재 상황에서 잘 작동하는지 확실하지 않지만 Chrome 개발자 도구에서 일반적으로 (그리고이 점에서 훌륭한 도구이므로 언급 할 가치가있는 경우) 요소 상태를 시뮬레이션 할 수 있으며 하나도 있습니다 :focus.

그렇게하려면 Elements개발자 도구 의 탭으로 이동 Styles하여 오른쪽 섹션에 있는지 확인하십시오 (개발자 도구를 시작할 때 기본 위치 여야 함). 이제 오른쪽 상단 모서리에 아이콘이 Toggle Element State있습니다. 당신이 그것을 클릭하면 당신은 시뮬레이션 할 수 있습니다 :active, :hover, :focus:visited요소에 대한 당신은 당신의 코드보기에서 왼쪽 선택했습니다.

여기에 이미지 설명을 입력하십시오


3
이 답변으로 해결 된 다른 질문이 있으며, 처음 시도했지만이 상황에서 브라우저에서 Chrome 개발자 도구 창으로 변경하면 : focus 상태가 사라집니다.
Rogelio Triviño

9

테스트중인 페이지의 개발자 도구 페이지에있는 Chrome에서 ... 옵션 메뉴를 클릭하고 환경 설정에 대한 설정을 엽니 다 ... DevTools에서 '집중된 페이지 에뮬레이션 활성화'

그런 다음 테스트 페이지에서 요소가 나타납니다. 이것은 팝업 검색 결과를 화면에 유지하여 작업 할 수 있도록 초점을 맞추기 위해 노력했습니다.


8

실제 솔루션은 아니지만 일반적으로 작동합니다 (:

  1. 요소에 집중
  2. 상황에 맞는 메뉴를 마우스 오른쪽 버튼으로 클릭
  3. 개발자 도구로 이동

집중 가능한 입력 검사


1
2020 년 1 월부터 Chrome에서 계속 작동합니다. 감사합니다. 좋은 해결 방법
manroe

2

나는 매우 어려운 상황을 겪었고 여기에서 아무런 대답도 얻지 못했습니다 (나는 그것을 알지 못하기 때문에 몸을위한 컨테이너 또는 원래 이벤트를 변경하는 답변을 확인하지 못했습니다). 마침내 Chrome Inspector의 Control Event Listener Breakpoints를 통해 해결 방법을 찾았습니다. 어쩌면 F8 또는 마우스 오른쪽 버튼 클릭으로 팝업을 다시 숨기는 복잡한 상황에서 브라우저 간을 깨는 방법 일 수도 있습니다.

여기에 이미지 설명을 입력하십시오


1

브라우저 개발자 콘솔에 다음 Javascript를 붙여 넣습니다.

// Delayed console log of parent element with disappearing child element(s)
// Once code is trigger, you have 3 seconds to trigger the hidden element before it snapshots.
// The hidden elements should appear in the console ready to inspect.

var timer = 3000; //time before snapshot
var parent_of_element_to_inspect = 'div.elementcontainer'; //container of element to snapshot
setTimeout(function(){
 console.log(document.querySelector(parent_of_element_to_inspect).cloneNode(true));
},timer);

0

도구를 사용하는 것이 좋지 않기 때문에 더 빠른 수정이 있습니다. 여기에 내가하는 일이 있습니다.

event.originalEvent.preventDefault();
event.originalEvent.stopImmediatePropagation();
event.originalEvent.stopPropagation();

-1

Chrome DevTools를 연 다음 키보드 단축키를 사용하여 요소 관리자를 트리거하면 문제가 해결됩니다.

맥 : Cmd+Opt+J 그리고Cmd+Opt+C

Windows : Ctrl+Shift+J 그런 다음Ctrl+Shift+C

[1]

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.