الفرق بين المراجعتين لصفحة: «Sass/selector unify»

من موسوعة حسوب
لا ملخص تعديل
لا ملخص تعديل
سطر 2: سطر 2:
توحد الدالة <code>selector_unify()‎</code> اثنين من المحددات في محدد واحد يطابق فقط العناصر المتطابقة في كلا المُحدّدين. تعيد الدالة القيمة المعدومة <code>null</code> إن لم يكن هناك محدد من هذا القبيل.
توحد الدالة <code>selector_unify()‎</code> اثنين من المحددات في محدد واحد يطابق فقط العناصر المتطابقة في كلا المُحدّدين. تعيد الدالة القيمة المعدومة <code>null</code> إن لم يكن هناك محدد من هذا القبيل.


كما هو الحال مع توحيد المحددات الذي تُنجزه <code>‎$extend</code>، فإن هذا لا يضمن أن المحدد الناتج سيُطابق جميع العناصر المتطابقة بين المُحدّدين المُدخلين. على سبيل المثال، إذا وُحِّد ‎<code>.a .b</code> مع ‎<code>.x .y</code>، فستعيد الدالة المحدّد <code>‎.a .x .b.y, .x .a .b.y</code>، ولن يٌعاد <code>‎.a.x .b.y</code>. هذا يُجنِّب النتاتج الكبيرة مع مُطابقة جميع العناصر التي يُحتمل أن تكون مفيدةً.
كما هو الحال مع توحيد المحددات الذي تُنجزه <code>‎$extend</code>، فإن هذا لا يضمن أن المحدد الناتج سيُطابق جميع العناصر المتطابقة بين المُحدّدين المُدخلين. على سبيل المثال، إذا وُحِّد ‎<code>.a .b</code> مع ‎<code>.x .y</code>، فستعيد الدالة المحدّد <code>‎.a .x .b.y, .x .a .b.y</code>، ولن يٌعاد <code>‎.a.x .b.y</code>. هذا يُجنِّب النتاتج الطويلة والكبيرة في حين أنَّه يطابق جميع العناصر التي يُحتمل أن تكون مفيدةً.


== البنية العامة ==
== البنية العامة ==
سطر 12: سطر 12:


=== <code>‎$selector1</code> ===
=== <code>‎$selector1</code> ===
المُحدّد الأول الذي سيُوحَّد. يمكن أن يكون عبارةً عن سلسلة نصية أو قائمة من السلاسل النصية أو قائمة من قوائم السلاسل النصية كما تُعاد من قبل <code>&</code>.
المُحدّد الأول الذي سيُوحَّد. يمكن أن يكون عبارةً عن سلسلة نصية أو قائمة من السلاسل النصية أو قائمة من قوائم السلاسل النصية كما تُعاد من قبل <code>[[Sass/SassScript#.D8.A7.D9.84.D8.B1.D9.85.D8.B2 .26 .D9.81.D9.8A SassScript|&]]</code>.


=== <code>‎$selector2</code> ===
=== <code>‎$selector2</code> ===
المُحدّد الثاني الذي سيُوحَّد. يمكن أن يكون عبارةً عن سلسلة نصية أو قائمة من السلاسل النصية أو قائمة من قوائم السلاسل النصية كما تُعاد من قبل <code>&</code>.
المُحدّد الثاني الذي سيُوحَّد. يمكن أن يكون عبارةً عن سلسلة نصية أو قائمة من السلاسل النصية أو قائمة من قوائم السلاسل النصية كما تُعاد من قبل <code>[[Sass/SassScript#.D8.A7.D9.84.D8.B1.D9.85.D8.B2 .26 .D9.81.D9.8A SassScript|&]]</code>.


== القيم المعادة ==
== القيم المعادة ==
قائمة من قوائم السلاسل النصية التي تمثل نتيجة التوحيد، أو القيمة المعدومة <code>null</code> في حالة عدم حدوث التوحيد. وتكون بنفس التنسيق الذي يكون لمحدّد تُعيده <code>&</code>.
قائمة من قوائم السلاسل النصية التي تمثل نتيجة التوحيد، أو القيمة المعدومة <code>null</code> في حالة عدم حدوث التوحيد. وتكون بنفس التنسيق الذي يكون لمحدّد تُعيده <code>[[Sass/SassScript#.D8.A7.D9.84.D8.B1.D9.85.D8.B2 .26 .D9.81.D9.8A SassScript|&]]</code>.


== مثال ==
== مثال ==
مثال عن استخدام الدالة <code>selector_unify()‎</code>:<syntaxhighlight>
مثال عن استخدام الدالة <code>selector_unify()‎</code>:<syntaxhighlight lang="sass">
selector-unify(".a", ".b") => .a.b
selector-unify(".a", ".b") // .a.b
selector-unify(".a .b", ".x .y") => .a .x .b.y, .x .a .b.y
selector-unify(".a .b", ".x .y") // .a .x .b.y, .x .a .b.y
selector-unify(".a.b", ".b.c") => .a.b.c
selector-unify(".a.b", ".b.c") // .a.b.c
selector-unify("#a", "#b") => null
selector-unify("#a", "#b") // null
</syntaxhighlight>
</syntaxhighlight>



مراجعة 03:33، 22 أبريل 2018

توحد الدالة selector_unify()‎ اثنين من المحددات في محدد واحد يطابق فقط العناصر المتطابقة في كلا المُحدّدين. تعيد الدالة القيمة المعدومة null إن لم يكن هناك محدد من هذا القبيل.

كما هو الحال مع توحيد المحددات الذي تُنجزه ‎$extend، فإن هذا لا يضمن أن المحدد الناتج سيُطابق جميع العناصر المتطابقة بين المُحدّدين المُدخلين. على سبيل المثال، إذا وُحِّد ‎.a .b مع ‎.x .y، فستعيد الدالة المحدّد ‎.a .x .b.y, .x .a .b.y، ولن يٌعاد ‎.a.x .b.y. هذا يُجنِّب النتاتج الطويلة والكبيرة في حين أنَّه يطابق جميع العناصر التي يُحتمل أن تكون مفيدةً.

البنية العامة

selector_unify($selector1, $selector2)

المعاملات

‎$selector1

المُحدّد الأول الذي سيُوحَّد. يمكن أن يكون عبارةً عن سلسلة نصية أو قائمة من السلاسل النصية أو قائمة من قوائم السلاسل النصية كما تُعاد من قبل &.

‎$selector2

المُحدّد الثاني الذي سيُوحَّد. يمكن أن يكون عبارةً عن سلسلة نصية أو قائمة من السلاسل النصية أو قائمة من قوائم السلاسل النصية كما تُعاد من قبل &.

القيم المعادة

قائمة من قوائم السلاسل النصية التي تمثل نتيجة التوحيد، أو القيمة المعدومة null في حالة عدم حدوث التوحيد. وتكون بنفس التنسيق الذي يكون لمحدّد تُعيده &.

مثال

مثال عن استخدام الدالة selector_unify()‎:

selector-unify(".a", ".b") // .a.b
selector-unify(".a .b", ".x .y") // .a .x .b.y, .x .a .b.y
selector-unify(".a.b", ".b.c") // .a.b.c
selector-unify("#a", "#b") // null

انظر أيضًا

  • الدالة selector_append()‎: تضيف المحددات إلى بعضها بعضًا دون مسافات بينها.
  • الدالة selector_nest()‎: تُشعّب المحددات.
  • الدالة selector_replace()‎: استبدال المحددات.

مصادر