الفرق بين المراجعتين ل"jQuery/has selector"
< jQuery
اذهب إلى التنقل
اذهب إلى البحث
جميل-بيلوني (نقاش | مساهمات) ط |
|||
سطر 14: | سطر 14: | ||
=== ملاحظات إضافية === | === ملاحظات إضافية === | ||
− | لمّا كان المحدد <code>:has()</code> هو ملحق تابع لمكتبة jQuery وليس جزءًا من مواصفة [[CSS]]، فإن الاستعلامات التي تستعمل <code>:has()</code> لا يمكنها الإستفادة من سرعة الأداء الذي يوفره تابع DOM الأصلي <code>querySelectorAll()</code>. للحصول أداء أفضل في المتصفحات الحديثة، استعمل <code>$( "your-pure-css-selector" ).has( selector/DOMElement )</code> بدلًا من ذلك. | + | لمّا كان المحدد <code>:has()</code> هو ملحق تابع لمكتبة jQuery وليس جزءًا من مواصفة [[CSS]]، فإن الاستعلامات التي تستعمل <code>:has()</code> لا يمكنها الإستفادة من سرعة الأداء الذي يوفره تابع DOM الأصلي [[JavaScript/Document/querySelectorAll|<code>querySelectorAll()</code>]]. للحصول أداء أفضل في المتصفحات الحديثة، استعمل <code>$( "your-pure-css-selector" ).has( selector/DOMElement )</code> بدلًا من ذلك. |
== أمثلة == | == أمثلة == | ||
− | إضافة الصنف "test" إلى كل عناصر <code>[[HTML/div|<nowiki><div></nowiki>]]</code> التي تضم عنصر <code>[[HTML/p|<nowiki><p></nowiki>]]</code> داخلها:<syntaxhighlight lang="html"> | + | إضافة الصنف <code>"test"</code> إلى كل عناصر <code>[[HTML/div|<nowiki><div></nowiki>]]</code> التي تضم عنصر <code>[[HTML/p|<nowiki><p></nowiki>]]</code> داخلها:<syntaxhighlight lang="html"> |
<!doctype html> | <!doctype html> | ||
<html lang="en"> | <html lang="en"> | ||
سطر 42: | سطر 42: | ||
== مصادر == | == مصادر == | ||
− | * [http://api.jquery.com/has-selector/ صفحة المحدد .has() في توثيق jQuery الرسمي.] | + | * [http://api.jquery.com/has-selector/ صفحة المحدد .has() في توثيق jQuery الرسمي.] |
[[تصنيف:jQuery]] | [[تصنيف:jQuery]] | ||
[[تصنيف:jQuery Selectors]] | [[تصنيف:jQuery Selectors]] |
المراجعة الحالية بتاريخ 14:43، 28 مايو 2018
المحدد :has()
الوصف
يختار هذا المحدد العناصر التي تحتوي على عنصر واحد على الأقل والذي تطابق مع المُحدِّد المُمرَّر.
jQuery( ":has(selector)" )
أضيف مع الإصدار: 1.1.4.
selector
أي نوع من محددات jQuery.
التعبير $( "div:has(p)" )
ينتقي العنصر <div>
إذا كان يضم العنصر <p>
داخله سواءً كان ابنًا مباشرًا أو غير مباشر.
ملاحظات إضافية
لمّا كان المحدد :has()
هو ملحق تابع لمكتبة jQuery وليس جزءًا من مواصفة CSS، فإن الاستعلامات التي تستعمل :has()
لا يمكنها الإستفادة من سرعة الأداء الذي يوفره تابع DOM الأصلي querySelectorAll()
. للحصول أداء أفضل في المتصفحات الحديثة، استعمل $( "your-pure-css-selector" ).has( selector/DOMElement )
بدلًا من ذلك.
أمثلة
إضافة الصنف "test"
إلى كل عناصر <div>
التي تضم عنصر <p>
داخلها:
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>has demo</title>
<style>
.test {
border: 3px inset red;
}
</style>
<script src="https://code.jquery.com/jquery-1.10.2.js"></script>
</head>
<body>
<div><p>Hello in a paragraph</p></div>
<div>Hello again! (with no paragraph)</div>
<script>
$( "div:has(p)" ).addClass( "test" );
</script>
</body>
</html>