40 votes

Comment vérifier si l'objet est un élément DOM ?

J'ai une fonction :

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

Comment puis-je vérifier si le paramètre o est un objet DOM ou non ?

83voto

David Points 36241

Un élément DOM implémente l'interface Element. Vous pouvez donc utiliser :

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

4voto

Qeremy Points 3719

Réponse tardive, mais un fragment de document pourrait également être un nœud :

function isNode(node) {
    return node && (node.nodeType === 1 || node.nodeType == 11);
}

Crédits : https://github.com/k-gun/so/blob/4.8.1/so.dom.js#L50

0voto

Ben Rowe Points 15269

Vous pouvez utiliser la fonction suivante

function isNode(o)
{
  return o && 'nodeType' in o;
}

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X