Olaf Schneider: (JQUERY) Existenz eines Node

Hallo,

gibt es eine Best Practice, um mittels jQuery auf die Existenz eines Nodes mit einer bestimmten id zu testen?

Bis jetzt arbeite ich so:

  
if ($("div#my-id").length) {  
    do_something();  
}  

Das funktioniert auch, liest sich aber durch die length-Eigenschaft nicht sonderlich intuitiv. Wie macht Ihr das?

Gruß
Olaf

  1. Also mit Prototype dann eventuell so:

      
    if (!Object.isUndefined($("div#my-id"))) {  
        do_something();  
    }  
    
    

    Habs aber nicht getestet...

    1. Hallo Jurik,

      Also mit Prototype dann eventuell so:

      if (!Object.isUndefined($("div#my-id"))) {
          do_something();
      }

        
      das würde nicht funktionieren, da die $()-Funktion in Prototype keine Selektoren entgegen nimmt, aber mit einer id gut zurechtkommt:  
        
      ~~~javascript
        
      if ($("my-id")) {  
          do_something();  
      }  
      
      

      Bei jQuery gibt $() aber immer ein Objekt zurück und der Ausdruck wäre immer true.

      Gruß
      Olaf

  2. Hallo,

    Das funktioniert auch, liest sich aber durch die length-Eigenschaft nicht sonderlich intuitiv.

    Soweit ich weiß ist das aber so gedacht.

    Mathias

    1. Hallo Mathias,

      Soweit ich weiß ist das aber so gedacht.

      ich habe noch mit einem Kollegen gesprochen, der das genauso handhabt. Es scheint also tatsächlich so üblich zu sein.

      Vielen Dank und Gruß,
      Olaf