جابجایی jQuery - روش has()

مثال

بررسی اینکه یک عنصر در داخل یک عنصر دیگر قرار دارد:

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

آزمایش کنید

تعریف و استفاده

has() مجموعه عناصر تطابق‌یافته را به مجموعه فرزندان که دارای انتخاب‌گر یا عنصر تطابق‌یافته هستند، کاهش می‌دهد.

منطق

.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>.