javascript 자바스크립트 객체가 DOM 요소인지 확인하는 방법은 무엇입니까?




자바스크립트 tagname (5)

DOM 요소는 Element 인터페이스를 구현합니다. 그래서 당신은 사용할 수 있습니다 :

function Check(o) {
    alert(o instanceof Element);
}

이 질문에는 이미 답변이 있습니다.

나는 함수가있다 :

function Check(o)
{
    alert(/* o is a DOM element ? "true" : "false" */);
}

매개 변수 o 가 DOM 객체인지 여부를 어떻게 확인할 수 있습니까?



DOM 노드가 JQuery와 요소인지 확인할 수 있습니다.

element.is("*")

단지 부동산의 존재를 확인하는 대신, 나는 그 특정한 가치를 점검 할 것입니다.

이것은 "유형 1"요소를 찾고 있다고 가정합니다.

nodeType at MDC (docs)

function Check(o) {
    alert( o && o.nodeType && o.nodeType === 1 );
}

실제로 DOM 노드가 아닌 nodeType 속성을 가진 객체를 얻을 수도 있지만 false positive를 제공하기 위해 1 의 일치 값을 가져야합니다.


nodeName 특성이 있는지 확인하십시오.

기본적으로 Node 인지 확인하십시오. DOM lvl 1 사양을 보고 노드 정의를 확인하십시오.

ElementtagName 프로퍼티를 체크한다고 말했을 때 그것을 문자 적으로 의미한다면, 같은 스펙의 엘리먼트 정의를 보라.

따라서 요약하면

function Check(o)
{
    alert(o.tagName ? "true" : "false");
}

DOM 요소인지 확인하거나

function Check(o)
{
    alert(o.nodeName ? "true" : "false" );
}

DOM 노드인지 확인한다.





dom