이 질문에는 이전에 물어 보았지만 (a) 오래전에 (b) 일부 답변에는 jQuery가 포함되었습니다.변수가 가능한 DOM 요소인지 여부를 테스트하는 자바 스크립트
IE> = 8을 포함한 현재 브라우저의 경우 변수가 DOM 요소인지 테스트하는 가장 간단한 방법은 무엇입니까?
요소가 현재 DOM에 있는지 여부는 신경 쓰지 않습니다. 변수가 유효한 요소 객체를 포함하는지 여부에 더 관심이 있습니다.
문서 요소와 문자열 중 하나를 선택해야하는 함수를 작성하고 있습니다. 여기
function doit(element) {
if (element instanceof Element) {
// document element
} else if (typeof element == 'string') {
// string
}
// else out of luck
}
는 문자열 요소에 대한
instanceof
및
typeof
을 사용, 나는 다른 곳에서 읽은 내용 조립할 : 여기에 내 걸릴 것입니다.
IE (Internet Explorer)를 포함하면 오늘날의 브라우저에서 가장 효율적이고 올바른 방법입니까?
감사
, 당신이 당신의 요소가 DOM에 실제로하는지 테스트하려면? 예인 경우 코드가 작동하지 않습니다. –
좋은 지적입니다. 아니요, 변수에 유효한 HTML 요소가 포함되어 있는지 여부입니다. 나는 그 질문을 편집 할 것이다. – Manngo
"문서 요소"는 특정한 의미를 가지며, 이는 'Node.nodeType === Node.DOCUMENT_NODE' - devtools에서'# document '로 표시되는 노드입니다. 그것이 당신이 의미하는 것이 아니라면 다른 용어를 선택하십시오. "DOM 요소"를 의미한다면, 그 말을하십시오. –