jQuery Εκσκαφική Εντολή - Μέθοδος has()

Παράδειγμα

Έλεγχος αν ένα στοιχείο βρίσκεται μέσα σε ένα άλλο στοιχείο:

$("ul").append("<li>" + ($("ul").has("li").length ? "Yes" : "No") + "</li>");
$("ul").has("li").addClass("full");

Δοκιμάστε το προσωπικά

Ορισμός και χρήση

has() μειώνει τη συλλογή των στοιχείων που ταιριάζουν σε υποσυλλογή που έχουν στοιχεία που ταιριάζουν στον καθορισμένο επιλογέα ή στοιχεία DOM.

Γλώσσα

.has(selector)
Παράμετροι Περιγραφή
selector Άκρη κειμένου, περιέχει την έκφραση επιλογέα που ταιριάζει στα στοιχεία που ταιριάζουν.

Συμπεριγραφή

Αν δοθεί ένας αντικείμενο jQuery που αντιπροσωπεύει μια συλλογή στοιχείων DOM, η μέθοδος .has() δημιουργεί έναν νέο αντικείμενο jQuery από την υποσυλλογή των στοιχείων που ταιριάζουν στον υπογονό των στοιχείων που ταιριάζουν στον καθορισμένο επιλογέα.

Περιθώρησε την παρακάτω σελίδα με ενσωματωμένη λίστα:

<ul>
  <li>έκδοση στοιχείου λίστας 1</li>
  <li>έκδοση στοιχείου λίστας 2</li>
    <ul>
      <li>έκδοση στοιχείου λίστας 2-a</li>
      <li>έκδοση στοιχείου λίστας 2-b</li>
    </ul>
  </li>
  <li>έκδοση στοιχείου λίστας 3</li>
  <li>έκδοση στοιχείου λίστας 4</li>
</ul>

Μπορούμε να εφαρμόσουμε αυτόν τον τρόπο στην ομάδα των στοιχείων της λίστας, όπως ακολουθεί:

$('li').has('ul').css('background-color', 'red');

Δοκιμάστε το προσωπικά

Το αποτέλεσμα της κλήσης είναι ότι το παρασκήνιο του έργου 2 έχει ρυθμιστεί σε κόκκινο, επειδή αυτό το έργο είναι ο μοναδικός απογόνου που έχει <ul> του <li>.