نتائج البحث

اذهب إلى التنقل اذهب إلى البحث

المعاملات الافتراضية للدوال في JavaScript

معاملات الدالة الافتراضية (default function parameters) تسمح بتهيئة معاملات الدالة مع قيم افتراضية إن لم تُمرَّر لها قيمة أثناء استدعاء الدالة أو كانت القيمة المُمرَّرة هي undefined. البنية العامة function [name]([param1[ = defaultValue1 ][, ..., paramN[ = defaultValueN ]]]) { statements } الوصف تكون قيمة المعاملات الافتراضية في JavaScript هي undefined، لكن في بعض الحالات يكون من المفيد ضبط قيمة تلك المعاملات إلى قيمةٍ أخرى، وهنا تلعب المعاملات الافتراضية دورها. في الماضي كانت الاستراتيجية العامة المتبعة لضبط قيم افتراضية ...

معامل النشر Spread في JavaScript

معامل النشر (spread operator) يسمح للكائنات التي يمكن المرور على عناصرها -مثل تعابير المصفوفات أو السلاسل النصية (أي أنها iterable)- أن توسَّع في الأماكن التي تتوقع JavaScript وجود صفر وسيط أو أكثر (عند استدعاء الدوال) أو صفر عنصر أو أكثر (في المصفوفات)، أو نشر كائن في الأماكن التي تتوقع JavaScript وجود صفر زوج أو أكثر من المفاتيح والقيم المرتبطة بها (عند تعريف الكائنات). البنية العامة عند استدعاء الدوال: myFunction(...iterableObj); في المصفوفات أو السلاسل النصية: [...iterableObj, '4', 'five', 6]; عند تعريف الكائنات (ميزة ...

JavaScript/Topics/Expressions and Operators

هذا القسم فيه ما يتعلق بالتعابير والمعاملات في JavaScript. التعابير الأساسية وهي تتضمن التعابير والكلمات المحجوزة العامة في JavaScript. this تُحدَّد قيمة الكلمة المحجوزة this وفق طريقة استدعاء الدالة. function (تعبير تعريف الدوال) الكلمة المحجوزة function تُستخدَم لتعريف دالة داخل تعبير (expression). انظر إلى صفحة «الدوال في JavaScript» للمقارنة بين صيغ تعريف الدوال. class (تعبير تعريف الأصناف) الكلمة المحجوزة class تشير إلى تعبير تعريف للأصناف. function*‎ (تعبير تعريف الدوال المولدة) الكلمة المحجوزة function*‎ تُستخدَم لتعريف دالة مولِّدة داخل تعبير. انظر إلى صفحة «الدوال في JavaScript» ...

VM (تنفيذ JavaScript) في Node.js

مؤشر الاستقرار: 2 - مستقر. توفر الوحدة vm واجهات تطبيقات لترجمة وتشغيل الشيفرات البرمجية ضمن سياقات آلآت V8 الافتراضية. ويمكن ترجمة شيفرة JavaScript البرمجية وتشغيلها فورًا أو تجميعها وحفظها وتشغيلها لاحقًا. من الاستخدامات الشائعة، تشغيل التعليمات البرمجية في بيئة تجريبية معزولة (sandbox environment). وتُستخدم شيفرة sandbox سياق V8 مختلف، مما يعني انه يحتوي علي كائن عام مختلف عن باقي الشيفرة البرمجية. ويمكن توفير السياق عن طريق وضع كائن sandbox المعزول في السياق. وتعامل الشيفرةُ المعزولة أي خاصية في بيئة sandbox ...

تعبير تعريف الأصناف في JavaScript

تعبير تعريف الأصناف (class expression) هو إحدى الطرائق المستخدمة لتعريف صنف في ECMAScript 2015، وهو شبيه بتعابير تعريف الدوال (function expressions)، ويمكن أن يكون تعبير تعريف الأصناف مسمىً أو غير مسمى، وإذا كان مسمى فسيكون اسم الصنف محليًا لجسم الصنف فقط؛ لاحظ أنَّ الأصناف في JavaScript تستخدم الوراثة عبر سلسلة prototype. البنية العامة var MyClass = class [className] [extends] { // محتويات الصنف }; الوصف يملك تعبير تعريف الأصناف شكلًا شبيهًا بالتصريح عن الأصناف (class declaration) لكن يمكنك حذف اسم ...

التصريح عن الدوال غير المتزامنة في JavaScript

التصريح عن دالة غير متزامنة (asynchronous function declaration) يُعيد كائنًا من النوع AsyncFunction، يمكن أيضًا إنشاء الدوال غير المتزامنة عبر تعابير تعريف الدوال غير المتزامنة (async function expression). البنية العامة async function name([param[, param[, ... param]]]) { statements } name اسم الدالة param اسم الوسيط المُرَّر إلى الدالة. statements التعابير البرمجية التي تُشكِّل جسم الدالة. القيمة المعادة كائن AsyncFunction الذي يُمثِّل الدالة غير المتزامنة ويُنفِّذ الشيفرة الموجودة ضمنها. الوصف عندما تُستدعى دالة غير متزامنة، فستعيد كائن Promise، وعندما تُعيد ...

التعبير البرمجي الفارغ في JavaScript

التعبير البرمجي الفارغ (empty statement) يُستخدَم لتجنب توفير تعبير برمجي في المواضع التي تتطلب فيها JavaScript تعبيرًا برمجيًا واحدًا على الأقل. البنية العامة ; الوصف التعبير الفارغ هو فاصلة منقوطة ; الذي يُشير إلى عدم وجود تعبير لتنفيذه حتى لو تطلبت JavaScript تعبيرًا أو أكثر؛ وفي المقابل، إذا كانت JavaScript تقبل باستخدام تعبير واحد فمن الممكن استخدم الأقسام الكتلية (block statement) لتجميع أكثر من تعبير برمجي. أمثلة قد يُستخدَم التعبير البرمجي الفارغ مع حلقات التكرار، لاحظ المثال الآتي الذي فيه ...

المحدد ‎‎‎:gt()‎‎ في jQuery

المحدد ‎:gt()‎ الوصف يحدِّد كل العناصر التي لها فهرس (index) أكبر من المعامل index المعطى داخل المجموعة المطابقة. jQuery(" :gt(index) ")‎ أُضيف مع الإصدار: 1.0. index فهرس صفري للعنصر المراد مطابقته. jQuery( ":gt(-index)" )‎ أُضيف مع الإصدار: 1.8. indexFromEnd فهرس صفري، معدود تنازليًا من العنصر الأخير. المحددات المتعلقة بالفهرس (index-related selectors) تنتقي المحددات المتعلقة بالفهرس مجموعةً من العناصر التي تطابقت مع التعابير سابقًا. إذ تقلِّص العناصر بناءً على ترتيبها في المجموعة المتطابقة. لنفترض مثلا أنه حُدِّدت أولًا العناصر الموجودة في محدد ...

نظرة عامة على وحدة العرض في ريلز

بعد قراءة هذا الدليل، ستعرف: ما هو Action View وكيفية استخدامه مع ريلز. أفضل طريقة لاستخدام القوالب والجزئيات (partials) والتخطيطات. ما الذي يقدمه المساعدون عن طريق Action View. كيفية استخدام العروض المحلية. ما هو Action View؟ في ريلز، تُعَالَج طلبات الويب من خلال Action Controller و Action View. عادةً ما يقع على عاتق وحدة التحكم التواصل مع قاعدة البيانات وتنفيذ الإجراءات CRUD عند الضرورة؛ بعد ذلك، يكون Action View مسؤولًا عن تفسير (compiling) الاستجابة. تُكتَب قوالب Action View باستخدام روبي ...

Document.adoptNode()‎

يتبنّى التّابع Document.adoptNode()‎ عقدة خارجيّة، وتُحذف العقدة وشجرتها الفرعيّة من المُستند الأصلي (إن كان موجودًا)، وتتغيّر قيمة المُستند المالِك ownerDocument إلى المُستند الحاليّ. ويُمكن بعد ذلك إدخال العقدة إلى المُستند الحاليّ. البنية العامة node = document.adoptNode(externalNode); node يُمثّل العقدة المُتبنّاة والتي مالِكها هو المُستند الحالي وعقدتها الأب parentNode ذات قيمةٍ null، وذلك لأنّها لم تُدخَل بعدُ إلى شجرة المُستند. لاحِظ أنّ كلّا من node وexternalNode سيُصبحان نفس الكائن بعد الاستدعاء. externalNode هي العقدة التي ستُتبنّى من مُستند آخر. مثال var ...

مكونات الويب في React

إنّ مكوّنات React ومكوّنات الويب مبنية لحل مشاكل مختلفة. حيث تُزوِّدنا مكوّنات الويب بتغليف قوي لمكوّنات قابلة لإعادة الاستخدام، بينما تُزوِّدنا مكوّنات React بمكتبة تصريحات تُبقي DOM على تزامن مع بياناتنا. يكون هذا الهدفان متكاملين، وكمُطوّر لك حرية استخدام React في مكوّنات الويب لديك، أو استخدام مكوّنات الويب في React أو كليهما معًا. معظم من يستخدم React لا يستخدم مكوّنات الويب، ولكن قد ترغب في ذلك خاصة إذا كنت تستخدم مكوّنات لواجهة المستخدم من طرف ثالث والتي تكون مكتوبة باستخدام ...

التابع ‎‎jQuery.parseHTML()‎‎ في jQuery

jQuery.parseHTML( data [, context ] [, keepScripts ] )‎ القيم المعادة يعيد مصفوفةً (Array). الوصف يفسِّر هذا التابع سلسلة نصية تحتوي على شيفرة HTML ثمَّ يعيد مصفوفة من عقد DOM. jQuery.parseHTML( data [, context ] [, keepScripts ] )‎ أُضيف مع الإصدار: 1.8. data سلسلة نصية تحوي شيفرة HTML التي يراد تفسيرها. context عنصرٌ يمثِّل السياق الذي سيُنشَأ فيه محتوى HTML المُفسَّر. القيمة الافتراضيَّة هي العنصر document. keepScripts قيمةٌ منطقيَّةٌ تحدِّد إن كان يراد إضافة السكربتات الموجودة في شيفرة HTML ...

التابع ‎‎jQuery.parseHTML()‎‎ في jQuery

jQuery.parseHTML( data [, context ] [, keepScripts ] )‎ القيم المعادة يعيد مصفوفةً (Array). الوصف يفسِّر هذا التابع سلسلة نصية تحتوي على شيفرة HTML ثمَّ يعيد مصفوفة من عقد DOM. jQuery.parseHTML( data [, context ] [, keepScripts ] )‎ أُضيف مع الإصدار: 1.8. data سلسلة نصية تحوي شيفرة HTML التي يراد تفسيرها. context عنصرٌ يمثِّل السياق الذي سيُنشَأ فيه محتوى HTML المُفسَّر. القيمة الافتراضيَّة هي العنصر document. keepScripts قيمةٌ منطقيَّةٌ تحدِّد إن كان يراد إضافة السكربتات الموجودة في شيفرة HTML ...

Document.createAttribute()‎

يُنشئُ التّابع Document.createAttribute()‎ عقدةَ خاصيّة (attribute node) جديدةً ويُعيدها. الكائن المُنشأ يُعدّ عقدةً تُطبّق الواجهة Attr. لا يُلزِم DOM نوع الخصائص التّي يُمكن إضافتها بهذه الطّريقة. لاحِظ أنّ السلسلة النّصيّة المُعطاة كمعامِل تُحوّل إلى أحرفٍ صغيرة (lowercase). البنية العامة attribute = document.createAttribute(name) المعاملات name سلسلةٌ نصيّة تحتوي اسم الخاصيّة. القيمة المعادة عقدة من النّوع Attr. الاستثناءات استثناء INVALID_CHARACTER_ERR في حالة احتوى المُعامل محارف غير صالحة لخصائص XML. مثال var node = document.getElementById("div1"); var a = document.createAttribute("my_attrib"); a.value = "newVal"; node.setAttributeNode(a); console.log(node.getAttribute("my_attrib")); // "newVal" دعم ...

الصنف ‎:empty

الصنف الزائف ‎:empty في CSS (أي pseudo-class) يُمثِّل أي عنصر ليس له أبناء، والأبناء يمكن أن تكون عقد عناصر (element nodes) أو عقدًا نصيةً (text nodes) بما في ذلك الفراغات. لن تؤثر التعليقات على اعتبار العنصر فارغًا أم لا. div:empty { background: lime; } الشكل العام لهذا المحدد: :empty أمثلة لدينا في المثال الآتي ثلاثة عناصر <div>، أولها يحتوي تعليقًا فقط، والثاني يحتوي على عقدة نصية، والثالث يحتوي على تعليق لكن هنالك فراغات قبله: <div class="box"><!-- سأكون ليموني اللون --></div> <div ...

العوارض في منصة iOS في كوردوفا

يوضح هذا الدليل كيفية تضمين مُكوّن (component) عارض كوردوفا في تطبيقات منصة iOS الكبيرة. للمزيد من التفاصيل حول كيفية جعل تلك المكوّنات تتواصل مع بعضها، راجع دليل تطوير الإضافات. بدأ دعم العوارض في منصة iOS منذ الإصدار 1.4 كوردوفا، باستخدام مكوِّن Cleaver الذي بُنِي على قالب Xcode. منصة كوردوفا 2.0 والإصدارات الأحدث لا تدعم إلا التقديم المستند إلى المشروع الفرعي (subproject-based) للمكُوِّن Cleaver. تتطلب هذه الإرشادات على الأقل الإصدار الرابع من كوردوفا، والثامن من Xcode، بالإضافة إلى الملف config.xml من ...

تخطيط الصفحات والتصيير في ريلز

يغطي هذا الدليل ميزات التخطيط الأساسية لوحدتي التحكم والعرض. بعد قراءة هذا الدليل، ستتعلم: كيفية استخدام توابع التصيير المختلفة المضمنة ‎في ريلز. كيفية إنشاء تخطيطات (layouts) تحتوي على أقسام محتوى متعددة. كيفية استخدام الأجزاء مع واجهات العرض. كيفية استخدام تخطيطات متداخلة (قوالب فرعية). نظرة عامة: كيف تتراكب قطع الأحجية معًا يركز هذا الدليل على التفاعل بين المتحكم والعرض في نمط التصميم Model-View-Controller. كما تعلم، فإنَّ المتحكم مسؤول عن تنظيم العملية الكاملة للتعامل مع الطلب في ريلز، على الرغم من أنه ...

تعابير تعريف الدوال غير المتزامنة في JavaScript

الكلمة المحجوزة async function تُستخدَم لتعريف دوال غير متزامنة ضمن تعبير (expression). طريقة أخرى لتعريف الدوال غير المتزامنة في JavaScript هي التصريح عنها. البنية العامة async function name([param[, param[, ... param]]]) { statements } name اسم الدالة، ويمكن حذفه وحينئذٍ ستسمى الدالة بالدالة المجهولة؛ واسم الدالة لن يكون متاحًا إلا داخل الدالة نفسها (يمكن أن يستعمل لتنفيذها تعاوديًا [recursively]). param اسم الوسيط المُرَّر إلى الدالة. statements التعابير البرمجية التي تُشكِّل جسم الدالة. الوصف تعابير تعريف الدوال غير المتزامنة تشبه ...

التحقق من الأنواع في ملفات JavaScript في TypeScript

مقدمة أصبحت TypeScript منذ النسخة 2.3 تدعم التحقق من الأنواع والإبلاغ عن الأخطاء في ملفّات ‎.js‎ مع خيار المترجم ‎--checkJs‎. يمكنك تخطي التحقق من ملفّاتٍ معيّنة عبر إضافة التعليق ‎// @ts-nocheck‎ إليها؛ وفي المقابل يمكنك اختيار ملفّات ‎.js‎ التي تريد التحقق منها عبر إضافة التعليق ‎// @ts-check‎ إليها دون استخدام الخيار ‎‎--checkJs‎‎. يمكنك كذلك تجاهل الأخطاء على أسطرٍ محدَّدة عبر إضافة التعليق ‎// @ts-ignore‎ على نفس السطر. لاحظ أنّه عند ضبط ملفّ ‎tsconfig.json‎، فالتحقق من ملفات JavaScript سيحترم الخيارات الصارمة ...

البنية المختصرة لتعريف الدوال في JavaScript

بدءًا من ECMAScript 2015 (أي ES6)، يمكن تعريف الدوال التابعة للكائن بطريقة مختصرة عند تهيئة الكائنات. البنية العامة var obj = { property( parameters… ) {}, *generator( parameters… ) {}, async property( parameters… ) {}, async* generator( parameters… ) {}, // مع مفاتيح محسوبة [property]( parameters… ) {}, *[generator]( parameters… ) {}, async [property]( parameters… ) {}, // قارن مع شكل getter/setter get property() {}, set property(value) {} }; الوصف ...

استخدام لغة Kotlin في نطاق JavaScript

تتيح لغة Kotlin إمكانيّة استهداف لغة JavaScript من خلال تحويل (transpiling) شيفرات Kotlin إلى ما يماثلها في JavaScript ؛ إذ تستهدف بالوقت الحاليّ معيارECMAScript 5.1، ومن المُخطَّط له أيضًا التوافق مع معيار ECMAScript 2015 لاحقًا. عند استخدام لغة Kotlin بهدف كتابة شيفرات JavaScript فستُحوَّل الشيفرات المكتوبة بلغة Kotlin (بعدِّها جزءًا من المشروع والمكتبة القياسيّة في Kotlin) إلى شيفرة JavaScript، ولكنّ هذا لا يشمل أيًّا ممّا يتعلَّق ببيئة JDK أو JVM أو Java أو أيّ من منصّاتها أو مكتباتها المُستخدَمة، ويُستبعَد ...

تعابير تعريف الدوال المولدة في JavaScript

الكلمة المحجوزة function*‎ تُستخدَم لتعريف دالة مولِّدة داخل تعبير. البنية العامة function* name([param[, param[, ... param]]]) { statements } name اسم الدالة، ويمكن حذفه وحينئذٍ ستسمى الدالة بالدالة المجهولة؛ واسم الدالة لن يكون متاحًا إلا داخل الدالة نفسها (يمكن أن يستعمل لتنفيذها تعاوديًا [recursively]). param اسم الوسيط المُرَّر إلى الدالة، العدد الأقصى للوسائط التي يمكن تمريرها إلى الدالة يختلف حسب المحرِّك الذي يُفسِّر اللغة. statements التعابير البرمجية التي تُشكِّل جسم الدالة. الوصف تعابير تعريف الدوال المولِّدة تشبه كثيرًا (وتكاد ...

إضافة اتجاه الشاشة في كوردوفا

تُستخدَم إضافة اتجاه الشاشة (cordova-plugin-screen-orientation) للتحكم باتجاه الشاشة (عبر ضبطها إلى اتجاه محدَّد أو منع تغيير الاتجاه) بشكل موحَّد في المنصات iOS وأندرويد و windows-uwp. تعتمد هذه الإضافة على الواجهة البرمجية لاتجاه الشاشة، حتى تتطابق مع المواصفات الحالية. تضيف هذه الإضافة العناصر التالية إلى كائن الشاشة window.screen: // منع تغيير اتجاه الشاشة .orientation.lock('portrait') // السماح بتغيير اتجاه الشاشة .orientation.unlock() // الاتجاه الحالي .orientation‎ التثبيت يمكن تثبيت هذه الإضافة عبر الأمر التالي: cordova plugin add cordova-plugin-screen-orientation‎ الاتجاهات المدعومة portrait-primary يمثل هذا الاتجاه الوضع العمودي الأولي (primary ...

طريقة الاستعمال وتشغيل الأمثلة في Node.js

البنية العامة node [options] [V8 options] [script.js | -e "script" | - ] [arguments] راجع رجاءً توثيق خيارات سطر الأوامر للمزيد من المعلومات عن الخيارات والطرائق التي يمكن استعمالها لتشغيل السكربتات وتنفيذها مع Node.js. تشغيل الأمثلة سنشرح مثالًا عن إنشاء خادم ويب باستعمال Node.js يُظهِر العبارة 'مرحبًا بالعالم!' في المتصفح. تبدأ الأوامر المستعملة في هذا المثال بالمحرف $ أو < وذلك لمحاكاة كيفيَّة ظهورها في طرفيَّة المستخدم، لذا لا تضف هذين المحرفين إلى الأوامر عند نسخها واستعمالها. توجد الكثير من الدروس ...

التابع ‎‎.html()‎‎ في jQuery

يجلب هذا التابع محتوى HTML لأول عنصر في مجموعة العناصر المطابقة أو يغير محتوى HTML لكل العناصر المطابقة. ()html. القيم المعادة يعيد سلسلة نصية من النوع String. الوصف يجلب هذا التابع محتوى HTML لأول عنصر في مجموعة العناصر المطابقة. ‎.html()‎ أضيفت مع الإصدار: 1.0، ولا يقبل هذا التابع أي معاملات. هذا التابع غير متوافر في صفحات XML. في صفحة HTML، يمكن استعمال التابع ()html. لجلب محتوى أي عنصر. إذا طابق تعبير المحدد أكثر من عنصر، فسيُعاد محتوى HTML للعنصر الأول ...

JSX في TypeScript

مقدمة JSX بنيةٌ (syntax) مشابهةٌ للغة XML يُمكن تضمينها وتحويلها إلى شيفرة JavaScript صالحة، لكن آلية عملية التحويل تختلف من تطبيق (implementation) إلى آخر. اشتهرت JSX باستخدامها مع مكتبة React، لكنها تملك تطبيقات أخرى غير React. تدعم لغة TypeScript تضمين JSX، وتدقيق الأنواع فيها، وكذا ترجمة JSX إلى JavaScript مباشرةً. ملاحظة حول المصطلحات: نستخدم في هذه الصّفحة كلمة "صِفَة" للإشارة إلى الكلمة الإنجليزيّة "attribute" وكلمة "خاصيّة" للإشارة إلى كلمة "property"، كلاهما يُترجَم إلى كلمة "خاصيّة" ولهما نفس المعنى في معظم ...

خيارات سطر الأوامر في Node.js

يتوافر العديد من خيارات سطر الأوامر التي يمكن استعمالها مع Node.js. تُستعمَل هذه الخيارات في تنقيح أخطاء الشيفرة، والتحكم في كيفيَّة تنفيذ الشيفرة، وغيرها من الأمور المفيدة. يمكن عرض هذا التوثيق في الطرفيَّة عبر استعمال الأمر man node. البنية العامة node [options] [V8 options] [script.js | -e "script" | -] [--] [arguments] node debug [script.js | -e "script" | <host>:<port>] … node --v8-options إنَّ تنفيذ node دون أيَّة وسائط يؤدي إلى بدئها مع الوحدة REPL. لمزيدٍ من المعلومات حول node debug، راجع رجاءً ...

تعليمات الشرطات المائلة الثلاث في TypeScript

مقدمة تعليمات الشرطات المائلة الثلاث (Triple-slash directives) هي تعليقات تكتب في سطر واحد تحتوي على وسم XML واحد. تُستخدَم محتويات التعليق كتعليمات (إرشادات) للمترجم. تكون تعليمات الشرطات المائلة الثلاث صالحةً فقط في أعلى الملفّ الذي تكون هذه التعليمات موجودة داخله. ويُمكن لهذه التعليمات أن تُسبَق فقط بتعليق في سطر واحد أو تعليق متعدّد الأسطر (multi-line comment)، ما يشمل تعليمات شرطات مائلة ثلاث أخرى. إذا وُجِدَت بعد جملة أو تصريح فستُعامَل على أنها تعليقات عادية في سطر واحد (regular single-line comments)، ...

Document.createTreeWalker()‎

يُنشئ التّابع Document.createTreeWalker()‎ كائنًا جديدًا من النّوع TreeWalker ويُعيده. البنية العامة treeWalker = document.createTreeWalker(root, whatToShow, filter, entityReferenceExpansion); المعاملات root العقدة Node الجذر لمرور الكائن TreeWalker. عادةً ما يكون عنصرًا مملوكًا من طرف المُستند. whatToShow قيمة اختياريّةٌ من النّوع unsigned long تُمثّل قيمة bitmask تُنشأُ عبر دمج الخاصيّات الثّابتة الخاصّة بالكائن NodeFilter. وهي طريقة جيّدة لترشيح بعض أنواع العقد. القيمة الافتراضيّة هي 0xFFFFFFFF وتُمثّل الثّابتة SHOW_ALL. الثّابتة القيمة الرّقميّة الوصف NodeFilter.SHOW_ALL ‎-1 (وهي القيمة القصوى للنّوع unsigned long) اعرض جميع العقد. ...

Python/pathlib/Path/is mount

التابع PurePath.is_mount في بايثون يعيد هذا التابع القيمة المنطقية True إذا كان المسار هو نقطة تثبيت (mount point) ، وهي موضع في نظام الملفات تم تثبيت ملفات نظام أخرى عليه. تعتمد طريقة عمل هذا التابع في أنظمة POSIX على التحقق من كون المسار الأب للمسار الحالي ../path موجودًا في جهاز مغاير للجهاز الحاوي على الابن path، أو إن كان الأب والابن يشيران إلى نفس مؤشر الفهرسة i-node ضمن نفس الجهاز. ملاحظة: لا يُستخدم هذا التابع في نظام ويندوز، وهو غير ...

خيارات المترجم في TypeScript

يوضح الجدول التالي جميع الخيارات التي يمكن استعمالها مع مترجم TypeScript للتحكم بسير عمله والتعديل على سلوكه أثناء ترجمة الشيفرات. الخيار النوع القيمة الافتراضية الوصف ‎--allowJs‎ ‎boolean‎ ‎false‎ السماح بترجمة ملفّات JavaScript. ‎--allowSyntheticDefaultImports‎ ‎boolean‎ ‎module === "system" ‎ أو أنّ الخيار ‎--esModuleInterop‎ مضبوط وقيمة ‎module‎ ليست ‎es2015‎ أو ‎esnext‎ السماح للاستيرادات الافتراضية من الوحدات التي لا تحتوي على تصديرات افتراضيّة. هذا لا يؤثر على الشيفرة المولَّدة، ويؤثر فقط على آلية التحقق من الأنواع. ‎--allowUnreachableCode‎ ‎boolean‎ ‎false‎ لا تُخبِر عن الأخطاء ...

الدالة jQuery()‎‎ في jQuery

تعيد هذه الدالة مجموعةً من العناصر المطابقة التي إمَّا وُجدَت في شجرة DOM بناءً على الوسائط المُمرَّرة، أو أنشئت بتمرير سلسلة نصية تحتوي على محتوى HTML. ‎jQuery( selector [, context ] )‎ القيم المعادة تعيد كائنًا من النوع jQuery. الوصف تقبل هذه الدالة سلسلة نصية تحتوي على محدِّد CSS يُستعمَل لمطابقة مجموعة من العناصر. ‎jQuery( selector [, context ] )‎ أُضيفت مع الإصدار: 1.0. selector سلسلة نصية تحتوي على تعبير محدِّد. context عنصر DOM، أو كائن Document، أو كائن jQuery ...

خط أنابيب الأصول في ريلز

يغطّي هذا الدليل أنبوب الأصول. ستتعلم بعد قراءة هذا الدليل: ماهيّة أنبوب الأصول وماذا يفعل. كيفيّة تنظيم أصول تطبيقك بشكل صحيح. فوائد أنبوب الأصول. كيفيّة إضافة معالج مسبق (pre-processor) إلى الأنبوب. كيفيّة وضع الأصول مع جوهرة في حزمة. ما هو أنبوب الأصول؟ يوفّر أنبوب الأصول إطارًا لسَلسَلة وتصغير أو ضغط أصول JavaScript و CSS. كما أنه يضيف القدرة على كتابة هذه الأصول بلغات أخرى ومعالجات مسبقة مثل CoffeeScript و Sass و ERB. يسمح للأصول في تطبيقك أن تُدمج تلقائيًّا مع ...

Document.createProcessingInstruction()‎

يُنشئ التّابع Document.createProcessingInstruction()‎ عقدةَ إرشادِ مُعالجة (processing instruction node) جديدةً ويُعيدها. البنية العامة Processing_instruction_node = document.createProcessingInstruction(target, data) المعاملات Processing_instruction_node عقدةٌ من النّوع ProcessingInstruction. target يُشير إلى جزء الهدف في عقدة إرشاد المعالجة، ‎<?‎target ... ?‎>‎ مثلًا. data سلسلةٌ نصيّة تحتوي على البيانات المرغوب إضافتها إلى البيانات داخل العقدة. الاستثناءات NOT_SUPPORTED_ERR يُرمى في حال لم يدعم المُتصفّح هذا التّابع (إصدارات أقدم من Firefox 9 مثلًا). DOM_INVALID_CHARACTER يُرمى عند مُحاولة إضافة هدف إرشاد مُعالجةٍ غير صالح (يجب أن يكون اسم XML أو الأحرف ...

التابع ‎‎.prepend()‎‎ في jQuery

‎.prepend( content [, content ] )‎ القيم المعادة يعيد كائنًا من النوع jQuery. الوصف يُستخدَم هذا التابع ‎في إدخال لمحتوى المُحدَّد عن طريق المُعامِل إلى بداية كل عنصر من مجموعة العناصر المُطابِقة. ‎.prepend( content [, content ] )‎ أضيف مع الإصدار 1.0. content سلسلة نصيّة من الكائن htmlString، أو عنصر، أو نص، أو مصفوفة، أو كائن jQuery، وتُمثِّل سلسلة HTML، أو عنصر DOM، أو عقدة نصيّة (text node)، أو مصفوفة من العناصر والعقد النصيّة، أو كائن jQuery المطلوب إدخالها في ...

التابع ‎.append()‎‎‎ في jQuery

‎.append( content [, content ] )‎ القيمة المعادة كائن jQuery. الوصف يُستخدَم التّابع ‎.append()‎ في إدخال المحتوى المُحدَّد عن طريق المُعامِل إلى آخر كل عنصر من مجموعة العناصر المُطابِقة. ‎.append( content [, content ] )‎ أضيفت في الإصدار: 1.0. content سلسلة نصيّة من الكائن htmlString، أو عنصر، أو نص، أو مصفوفة، أو jQuery، وتُمثِّل سلسلة HTML، أو عنصر DOM، أو عقدة نصيّة (text node)، أو مصفوفة من العناصر والعقد النصيّة، أو كائن jQuery المطلوب إدخالها بعد كل عنصر من مجموعة ...

تقرير الوحدات في TypeScript

قراءة هذه الصفحة تتطلّب فهمًا عامًّا للوحدات. انظر توثيق الوحدات للاستزادة. تقريرُ (أو حلُّ) الوحداتِ (Module resolution)، هي العمليّة التي يعتمد عليها المترجم (compiler) لاكتشاف ما يُشير إليه استيرادٌ (import) معيّن. لنفترض مثلًا أنّ لدينا جملة استيرادٍ كما يلي: ‎import { a } from "moduleA"‎‎؛ للتحقّق من أيّ اعتمادٍ على المتغيّر ‎a‎، فإنّ المترجم بحاجةٍ إلى فهم ما يُمثّله المتغيّر بالضبط، وسيتطلّب ذلك التحقق من تعريفه في الوحدة ‎moduleA‎. سيسأل المُترجم كبدايةٍ عن شكل الوحدة ‎moduleA‎، وقد تكون الوحدة مُعرّفةً ...

الأحداث في jQuery

تُستخدَم التوابع الموجودة في هذا القسم لتسجيل سلوكيات محدَّدة تحدث عندما وقع حدث معين ناتج عن تفاعل المستخدم مع المتصفح. أضف إلى ذلك وجود توابع تساعد على التعديل والتلاعب بتلك السلوكيات المسجلة مسبقًا. ‎.bind()‎ يُرفِق هذا التّابع مُعالِج أحداث (Event handler) لحدثٍ ما للعناصر. ‎.blur()‎ يربط هذا التّابع مُعالِج أحداث (event handler) إلى حدث الضّبابيّة ‎(blur)‎ في JavaScript، أو يُطلِق هذا الحدث على عنصر ما. ‎.change()‎ يربط هذا التّابع مُعالِج الأحداث (event handler) لتغيير حدث JavaScript أو يُطلِق هذا الحدث ...

الوحدة TTY في Node.js

مؤشر الاستقرار: 2 - مستقر توفر وحدة tty الصنفين tty.ReadStream و tty.WriteStream. في معظم الحالات، لن يكون من الضروري أو من الممكن استخدام هذه الوحدة مباشرةً. ومع ذلك، فإنه يمكن الوصول إليها باستخدام: const tty = require('tty'); عندما تكتشف Node.js أنها تعمل من الطرفية النصية ("TTY") المرفقة، ستُعاد تهيئة process.stdin، بشكل افتراضي، كمثيل من tty.ReadStream ويصبح كل من عملية process.stdout و process.stderr مثيلَين على tty.WriteStream بشكل افتراضي. ويصبح التحقق من أن قيمة الخاصية process.stdout.isTTY هي true هو الطريقة المفضلة لتحديد ما ...

CSS/Topics/Pseudo Classes

الصنف التمثيل ‎:active العناصر (مثل الأزرار) التي جرى تفعيلها من المستخدم. وعند استخدام الفأرة سيبدأ «تفعيل» العنصر عندما يضغط المستخدم على الزر الرئيسي لها وينتهي عند إفلات الضغط على ذاك الزر. ‎:checked أزرار انتقاء (radio button) أو صناديق تأشير (checkbox) أو خيارات <option> في عنصر<select> تم تحديدها أو انتقاؤها. يمكن أن يُفعِّل المستخدم هذه الحالة بتفعيل أو انتقاء العنصر. ‎:default أي عنصر مُختار افتراضيًا بين مجموعة من العناصر المتعلقة به؛ ويمكن استخدام هذا الصنف الزائف على أيّة أزرار عادية <button> أو أزرار انتقاء (radio button) ...

مدخل إلى TypeScript

يُشار إلى TypeScript على أنّها مجموعة عليا (superset) من JavaScript وتُترجم (compile) إليها. وهذا يعني بأن البرامج المكتوبة بلغة JavaScript هي برامج TypeScript صالحة كذلك، ولأنّها تُترجم إلى لغة JavaScript عاديّة، فيُمكن كتابة برامج بلغة TypeScript وترجمتها وتشغيلها في أي مكان يقبل تشغيل برمجيات JavaScript مثل المتصفّح، أو منصّة Node.js، أو أي مُحرّكٍ (engine) يدعم الإصدار ECMAScript 3 من لغة JavaScript أو أي إصدار أحدث منه. تدعم TypeScript مزايا JavaScript الجديدة والتي قيد التطوير، ما يشمل مزايا الإصدار ECMAScript 2015 ...

نظرة عامة على Active Storage في ريلز

يغطّي هذا الدليل كيفيّة إرفاق ملفات بنماذج Active Record. ستتعلم بعد قراءة هذا الدليل: كيفية إرفاق ملف أو عدّة ملفّات بسجل (record). كيفيّة حذف ملف مُرفق. كيفيّة الربط بملف مُرفق. كيفيّة استخدام المتغيّرات (variants) لتحويل الصور. كيفيّة إنشاء تمثيل صُوَري (image representation) لملف غير صُوَري، مثل ملف PDF أو فيديو. كيفيّة إرسال تحميلات الملفّات مباشرةً من المتصفّحات إلى خدمة تخزين، دون المرور على خوادم تطبيقك. كيفيّة تنظيف الملفّات المخزّنة أثناء الاختبار. كيفيّة تعريف استخدام (implement) الدعم لخدمات تخزين إضافيّة. ما ...

الوحدة V8 في Node.js

تعرض الوحدة v8 واجهات برمجة التطبيقات (API) الخاصة بإصدار V8 المضمنة في برمجية Node.js. ويمكن الوصول إليها باستخدام: const v8 = require('v8'); وقد يتعرض كلٌ من واجهات برمجة التطبيقات والتنفيذ للتغيير في أي وقت. v8.cachedDataVersionTag()‎ أُضيف مع الإصدار: v8.0.0.     • القيمة المُعادة: من النوع <integer>. يُعيد عدد صحيح يمثل "وسم الإصدار" مشتق من الإصدار V8، ورايات سطر الأوامر وميزات المعالج CPU المكتشفة. وهو يفيد في تحديد ما إذا كان المخزن المؤقت لـ cacheddata الخاص بـ vm.Script متوافق مع مثيل ...

التابع ‎.before()‎‎‎ في jQuery

‎.before( content [, content ] )‎ القيمة المعادة كائن jQuery. الوصف يُستخدَم التّابع ‎‎.before()‎‎ لإدخال المحتوى المُحدَّد عن طريق المُعامِل قبل كل عنصر من مجموعة العناصر المُطابقة. ‎.before( content [, content ] )‎ أضيفت في الإصدار: 1.0. content سلسلة نصيّة من الكائن htmlString، أو عنصر، أو نص، أو مصفوفة، أو jQuery، وتُمثِّل سلسلة HTML، أو عنصر DOM، أو عقدة نصيّة (text node)، أو مصفوفة من العناصر والعقد النصيّة، أو كائن jQuery المطلوب إدخالها قبل كل عنصر من مجموعة العناصر المُطابقة. ...

Document.createNSResolver()‎

يُنشئ التّابع Document.createNSResolver()‎ كائنًا من النّوع XPathNSResolver الذي يستبين مجالات الأسماء مع احترام التعريفات في النّطاق (scope) لعقدة مُحدَّدة. البنية العامة nsResolver = document.createNSResolver(node); node‎ العقدة المراد استعمالها كسياقٍ لحلّ مجال الأسماء. nsResolver‎ القيمة المعادة، وهي كائنٌ من النّوع XPathNSResolver. ملاحظات يتبنّى التّابع أي عقدة DOM لحلّ مجالات الأسماء لكي يتمّ تقدير (evaluate) تعبير XPath بسهولة حسب سياق العقدة ومكان ظهورها في المستند. هذا المتبنِّي يعمل كالتّابع lookupNamespaceURI‎ المعرّف في مواصفة DOM Level 3 على العقد في حلّ رابط URI ...

التابع ‎‎jQuery.globalEval()‎‎ في jQuery

jQuery.globalEval( code )‎ القيم المعادة يعيد أي شيء (وهو نوع افتراضي مُستخدَم في jQuery للإشارة إلى إمكانيَّة إعادة أي نوع). الوصف يُنفِّذ هذا التابع جزءًا من شيفرة JavaScript على الصعيد العام. jQuery.globalEval( code )‎ أُضيفت مع الإصدار: 1.0.4 code سلسلة نصية تحوي شيفرة JavaScript المراد تنفيذها. يسلك هذا التابع سلوكًا مختلفًا عن سلوك الدالة eval()‎ الطبيعي في JavaScript، إذ يُنفَّذ التابع ضمن السياق العام (هذا السلوك مهم لتحميل سكربتات خارجيَّة ديناميكيًّا). أمثلة تنفيذ سكربت في السياق العام (global context): function ...

التابع ‎‎jQuery.globalEval()‎‎ في jQuery

jQuery.globalEval( code )‎ القيم المعادة يعيد أي شيء (وهو نوع افتراضي مُستخدَم في jQuery للإشارة إلى إمكانيَّة إعادة أي نوع). الوصف يُنفِّذ هذا التابع جزءًا من شيفرة JavaScript على الصعيد العام. jQuery.globalEval( code )‎ أُضيفت مع الإصدار: 1.0.4 code سلسلة نصية تحوي شيفرة JavaScript المراد تنفيذها. يسلك هذا التابع سلوكًا مختلفًا عن سلوك الدالة eval()‎ الطبيعي في JavaScript، إذ يُنفَّذ التابع ضمن السياق العام (هذا السلوك مهم لتحميل سكربتات خارجيَّة ديناميكيًّا). أمثلة تنفيذ سكربت في السياق العام (global context): function ...

وحدة المسار (Path) في Node.js

مؤشر الاستقرار: 2 - مستقر. توفر وحدة المسار path أدوات للعمل مع مسارات الملفات والمجلدات. ويمكن الوصول إليها باستخدام: const path = require('path'); ويندوز في مقابل POSIX يختلف التشغيل الإفتراضي لوحدة path استنادًا إلى نظام التشغيل الذي يعمل عليه أحد تطبيقات Node.js. على وجه التحديد، عند تشغيل نظام تشغيل ويندوز، ستفترض وحدة path استخدام نمط ويندوز للمسارات. على سبيل المثال، استخدام الدالة path.basename()‎ مع مسار ويندوز للملف C:\temp\myfile.html، وسيُسفر ذلك عن نتائج مختلفة عند تشغيله على نظام يتبع معايير POSIX ...

مقدمة إلى JSX في React

فلننظر إلى تعريف هذا المتغير: const element = <h1>!أهلًا بالعالم</h1>; إنّ الصّياغة الغريبة السّابقة التي تحتوي على وسم هي ليست سلسلة نصيّة ولا حتى HTML. تُدعى الصّياغة السّابقة JSX وهي عبارة عن امتداد لصياغة JavaScript، نوصي باستخدامها مع React لوصف المظهر الذي ينبغي أن تكون عليه واجهة المستخدم. قد تُذكِّرك JSX بلغات القوالب، ولكنها تمتلك قوة JavaScript الكاملة. تُنتِج JSX عناصر React. سنستعرض إظهار هذه العناصر في DOM في قسم تصيير العناصر (Rendering Elements). سنتحدّث في الفقرات التالية عن أساسيّات JSX ...

التابع ‎.after()‎‎‎ في jQuery

after( content [, content ] )‎. القيمة المعادة كائن jQuery. الوصف يُستخدَم التّابع ‎.after()‎ لإدخال المحتوى المُحدَّد عن طريق المُعامِل بعد كل عنصر من مجموعة العناصر المُطابقة. ‎.after( content [, content ] )‎ أضيفت في الإصدار: 1.0. content سلسلة نصيّة من الكائن htmlString، أو عنصر، أو نص، أو مصفوفة، أو jQuery، وتُمثِّل سلسلة html، أو عنصر DOM، أو عقدة نصيّة (text node)، أو مصفوفة من العناصر والعقد النصيّة، أو كائن jQuery المطلوب إدخالها بعد كل عنصر من مجموعة العناصر المُطابقة. ...

Object.prototype.valueOf()‎

الدالة Object.prototype.valueOf()‎ تُعيد قيمةً أوليّةً للكائن المعطي. البنية العامة object.valueOf() القيمة المعادة قيمة أوليّة للكائن المعطي. الوصف تستدعي JavaScript الدالة valueOf لتحويل كائن ما إلى قيمة أوليّة، ومن النادر أن تحتاج إلى استدعاء الدالة valueOf يدويًا، إذ تستدعيها JavaScript تلقائيًا عندما تصادف كائنًا في مكانٍ تتوقع فيه قيمةً أوليةً. جميع الكائنات التي تنحدر من الكائن Object ترث الدالة valueOf، وتُعيد جميع الكائنات المُضمَّنة في اللغة تعريف هذه الدالة لتعيد القيمة المناسبة؛ وإذا لم يكن من الممكن تمثيل الكائن بقيمة أوليّة، ...

التابع ‎‎jQuery.parseJSON()‎‎ في jQuery

jQuery.parseJSON( json )‎ أهمل مع الإصدار: 3.0. القيم المعادة يعيد مصفوفةً (Array) أو سلسلةً نصيةً (String) أو عددًا (Number) أو كائنًا (Object) أو قيمة منطقيَّة (Boolean). الوصف يفسِّر هذا التابع سلسلة نصية بصيغة JSON إلى قيمة مقابلة في JavaScript. jQuery.parseJSON( json )‎ أُضيف مع الإصدار: 1.4.1. json سلسلة نصية بصيغة JSON يراد تفسيرها. بدءًا من الإصدار jQuery 3.0، أهمل التابع ‎$.parseJSON()‎، لذا استعمل التابع JSON.parse()‎ الأساسي في JavaScript عوضًا عنه. سيُرمى استثناءٌ في JavaScript إذا لم تكن السلسلة النصية المعطاة ...

التابع ‎‎jQuery.parseJSON()‎‎ في jQuery

jQuery.parseJSON( json )‎ أهمل مع الإصدار: 3.0. القيم المعادة يعيد مصفوفةً (Array) أو سلسلةً نصيةً (String) أو عددًا (Number) أو كائنًا (Object) أو قيمة منطقيَّة (Boolean). الوصف يفسِّر هذا التابع سلسلة نصية بصيغة JSON إلى قيمة مقابلة في JavaScript. jQuery.parseJSON( json )‎ أُضيف مع الإصدار: 1.4.1. json سلسلة نصية بصيغة JSON يراد تفسيرها. بدءًا من الإصدار jQuery 3.0، أهمل التابع ‎$.parseJSON()‎، لذا استعمل التابع JSON.parse()‎ الأساسي في JavaScript عوضًا عنه. سيُرمى استثناءٌ في JavaScript إذا لم تكن السلسلة النصية المعطاة ...

إنشاء وتخصيص مولدات وقوالب ريلز

مولدات ريلز هي أداة أساسية إذا كنت تخطط لتحسين سير عملك. مع هذا الدليل سوف تتعلم كيفية إنشاء المولدات وتخصيص المولدات الموجودة. بعد قراءة هذا الدليل، ستتعلم: كيفية معرفة أي المولدات المتوفرة في التطبيق الخاص بك. كيفية إنشاء مولد باستخدام القوالب. كيفية بحث ريلز عن المولدات قبل استدعائها. كيفية إنشاء ريلز داخليًا شيفرة من القوالب. كيفية تخصيص المولد scaffold عن طريق إنشاء مولدات جديدة. كيفية تخصيص المولد scaffold عن طريق تغيير قوالب المولدات. كيفية استخدام التراجعات (fallbacks) لتجنب استبدال مجموعة ...

Document.createNodeIterator()‎

يُعيد التّابع Document.createNodeIterator()‎ كائنًا جديدًا من النّوع NodeIterator. البنية العامة var nodeIterator = document.createNodeIterator(root, whatToShow, filter); المعاملات root العقدة الجذر التي سيبدأ منها مرور الكائن NodeIterator. whatToShow قيمة اختياريّةٌ من النّوع unsigned long تُمثّل قيمة bitmask تُنشأُ عبر دمج الخاصيّات الثّابتة الخاصّة بالكائن NodeFilter. وهي طريقة جيّدة لترشيح بعض أنواع العقد. القيمة الافتراضيّة هي 0xFFFFFFFF وتُمثّل الثّابتة SHOW_ALL. الثّابتة القيمة الرّقميّة الوصف NodeFilter.SHOW_ALL ‎-1 (وهي القيمة القصوى للنّوع unsigned long) اعرض جميع العقد. NodeFilter.SHOW_ATTRIBUTE 2 قيمةٌ مُهملَة تعرض عقد الخصائص ...

الواجهات البرمجية لتوقيت الأداء (Performance Timing API)

الاستقرار: 1- تجريبي. تقدم الواجهة البرمجية لتوقيت الأداء تطبيقًا لمواصفات W3C Performance Timeline. الغرض من  الواجهة البرمجية (API) هو دعم مجموعة من مقاييس الأداء عالية الدقة. والتي هي نفس واجهات الأداء المُطبّقة في متصفحات الويب الحديثة. const { PerformanceObserver, performance } = require('perf_hooks'); const obs = new PerformanceObserver((items) => { console.log(items.getEntries()[0].duration); performance.clearMarks(); }); obs.observe({ entryTypes: ['measure'] }); performance.mark('A'); doSomeLongRunningProcess(() => { performance.mark('B'); performance.measure('A to B', 'A', 'B'); }); الصنف: Performance أُضيف في الإصدار: 8.5.0. performance.clearMarks([name‎]‎)‎ أُضيفت في الإصدار: 8.5.0 name <string>‎ إذا ...

tsconfig.json في TypeScript

مقدمة وجود ملفٍّ باسم ‎tsconfig.json‎ في مجلّدٍ ما إشارةٌ إلى أنّ المجلّد هو جذر (root) مشروع TypeScript. يُحدِّد الملفّ ‎tsconfig.json‎ الملفات الجذر (root files) وخيارات الترجمة المطلوبة لترجمة المشروع. يُترجم المشروع بإحدى الطريقتين التاليتين: عبر استخدام أداة ‎tsc‎ دون أي ملفّات مُدخلَة (input files): في هذه الحالة يبحث المترجم عن الملف ‎tsconfig.json‎ بدءًا من المجلد الحالي ثمّ الصعود للأعلى في سلسلة المجلدات الآباء (parent directory chain). عبر استخدام أداة ‎tsc‎ دون أي ملفّات مُدخلَة وخيار سطر الأوامر ‎--project‎ (أو ‎-p‎ ...

Symbol.prototype[@@toPrimitive]‎‎

الدالة Symbol.prototype[@@toPrimitive]‎ تحوّل كائن Symbol إلى قيمة أوليّة. البنية العامة Symbol()[Symbol.toPrimitive](hint); القيمة المعادة القيمة الأولية لكائن Symbol المُحدَّد. الوصف الدالة ‎[@@toPrimitive]()‎‎ التابعة للكائن Symbol تُعيد القيمة الأولية للكائن Symbol. لا يُستخدَم الوسيط hint. تستدعي JavaScript الدالة ‎[@@toPrimitive]()‎‎ لتحويل كائن ما إلى قيمة أوليّة، ومن النادر أن تحتاج إلى استدعاء الدالة ‎[@@toPrimitive]()‎‎ يدويًا، إذ تستدعيها JavaScript تلقائيًا عندما تصادف كائنًا في مكانٍ تتوقع فيه قيمةً أوليةً. دعم المتصفحات الميزة Chrome Firefox Internet Explorer Opera Safari الدعم الأساسي ؟ 44 غير مدعومة ؟ ؟ مصادر ومواصفات ...

القوائم المنسدلة Dropdowns في إطار العمل Bootstrap

أظهر تراكيب سياقيّة لعرض قوائم روابط أو غيرها من العناصر باستخدام مُلحَق القوائم المنسدلة Dropdowns في إطار العمل Bootstrap. نظرة عامّة القوائم المنسدلة هي تراكيب سياقيّة يمكن التبديل بينها لعرض قوائم روابط أو عناصر أخرى. يعمل مُلحَق JavaScript الخاصّ بالقوائم المنسدلة المُضمَّن في إطار العمل Bootstrap على جعل القوائم تفاعليّة. يُبدَّل بين عناصر القائمة بالنقر وليس بالحومان؛ اختير هذا السلوك في التصميم على نحوٍ واع. تُبنَى القوائم المنسدلة على مكتبة Popper.js التي توفّر تموضعًا ديناميكيًّا للعناصر واكتشاف إطار العرض Viewport. ...

المصطلحات في React

التطبيق وحيد الصفحة التطبيق وحيد الصفحة (Single-page Application) هو التطبيق الذي يُحمِّل صفحة HTML واحدة وكل ملحقاتها الضرورية (مثل CSS و JavaScript) المطلوبة لكي يعمل التطبيق. لا تتطلّب أيّة تفاعلات مع الصفحة أو الصفحات اللاحقة أي عودة للخادم مرّة أخرى، ممّا يعني عدم إعادة تحميل الصفحة. بالرغم من قدرتك على بناء تطبيق وحيد الصفحة في React فهو ليس أمرًا ضروريًّا. يُمكِن أيضًا استخدام React لتحسين أجزاء صغيرة من الموقع مع الحصول على تفاعليّة أكبر. يُمكِن للشيفرة المكتوبة باستخدام React أن ...

Symbol.prototype.valueOf()‎

الدالة Symbol.prototype.valueOf()‎ تعيد القيمة الأوليّة (primitive value) لكائن Symbol. البنية العامة Symbol().valueOf(); القيمة المعادة القيمة الأولية للكائن Symbol. الوصف الدالة valueOf التابعة للكائن Symbol تُعيد القيمة الأولية للكائن Symbol. تستدعي JavaScript الدالة valueOf لتحويل كائن ما إلى قيمة أوليّة، ومن النادر أن تحتاج إلى استدعاء الدالة valueOf يدويًا، إذ تستدعيها JavaScript تلقائيًا عندما تصادف كائنًا في مكانٍ تتوقع فيه قيمةً أوليةً. دعم المتصفحات الميزة Chrome Firefox Internet Explorer Opera Safari الدعم الأساسي 38 36 غير مدعومة 25 9 على النقيض من متصفح IE، يدعم ...

Number.prototype.valueOf()‎

الدالة Number.prototype.valueOf()‎ تُعيد القيمة الأوليّة (primitive value) لأحد كائنات Number. البنية العامة numObj.valueOf() القيمة المعادة عدد يُمثِّل القيمة الأوليّة لكائن Number المُحدَّد. الوصف تستدعي JavaScript الدالة valueOf لتحويل كائن Number إلى قيمة أوليّة، ومن النادر أن تحتاج إلى استدعاء الدالة valueOf يدويًا، إذ تستدعيها JavaScript تلقائيًا عند الحاجة. أمثلة var numObj = new Number(10); console.log(typeof numObj); // object var num = numObj.valueOf(); console.log(num); // 10 console.log(typeof num); // number دعم المتصفحات الميزة Chrome Firefox Internet ...

مساعدو الاستمارة في وحدة العرض في ريلز

تعتبر الاستمارات (forms) في تطبيقات الويب واجهة أساسية للتفاعل مع المستخدم وجلب بيانات منه. ومع ذلك، يمكن أن تصبح عملية إنشاء استمارةٍ وصيانتها عمليةً مملةً بسبب الحاجة إلى التحكم بالتسميات وبخاصياتها الكثيرة. تخلَّص ريلز من هذا التعقيد بتوفير مساعدين للعرض لإنشاء الاستمارات بسهولة. ومع ذلك، بما أن للمساعدين حالات استخدام مختلفة، يحتاج المطورون إلى معرفة الاختلافات بين توابع كل مساعد قبل استخدامها. بعد قراءة هذا الدليل، ستتعلم: كيفية إنشاء استمارات للبحث ونوع مماثل من الاستمارات العامة التي لا تمثل أي ...

التابع ‎‎jQuery.isEmptyObject()‎‎ في jQuery

jQuery.isEmptyObject( object )‎ القيم المعادة يعيد قيمةً منطقيَّةً (Boolean). الوصف يتحقَّق هذا التابع إن كان الكائن المُمرَّر إليه فارغًا (لا يحوي أيَّة خاصِّيَّة قابلة للإحصاء) أم لا. jQuery.isEmptyObject( object )‎ أُضيف مع الإصدار: 1.4. objcet الكائن المراد التحقُّق منه لمعرفة إن كان فارغًا أم لا. بدءًا من الإصدار jQuery 1.4، أصبح هذا التابع يتحقَّق من خاصِّيَّات الكائن نفسه، والخاصِّيَّات الموروثة عبر سلسلة prototypes (لا يستخدم هنا hasOwnProperty). يجب أن يكون الوسيط المعطى كائن JavaScript مجرَّد (Object)، إذ قد لا تعطي ...

التابع ‎‎jQuery.isEmptyObject()‎‎ في jQuery

jQuery.isEmptyObject( object )‎ القيم المعادة يعيد قيمةً منطقيَّةً (Boolean). الوصف يتحقَّق هذا التابع إن كان الكائن المُمرَّر إليه فارغًا (لا يحوي أيَّة خاصِّيَّة قابلة للإحصاء) أم لا. jQuery.isEmptyObject( object )‎ أُضيف مع الإصدار: 1.4. objcet الكائن المراد التحقُّق منه لمعرفة إن كان فارغًا أم لا. بدءًا من الإصدار jQuery 1.4، أصبح هذا التابع يتحقَّق من خاصِّيَّات الكائن نفسه، والخاصِّيَّات الموروثة عبر سلسلة prototypes (لا يستخدم هنا hasOwnProperty). يجب أن يكون الوسيط المعطى كائن JavaScript مجرَّد (Object)، إذ قد لا تعطي ...

String.prototype.valueOf()‎

الدالة String.prototype.valueOf()‎ تُعيد القيمة الأوليّة (primitive value). البنية العامة str.valueOf() القيمة المعادة سلسلة نصية تُمثِّل القيمة الأوليّة لكائن String المعطي. الوصف الدالة valueOf()‎ التابعة للكائن String تُعيد القيمة الأوليّة لأحد كائنات String كنوع البيانات string، وهي مكافئة للدالة String.prototype.toString()‎. تستدعي JavaScript الدالة valueOf لتحويل كائن String إلى قيمة أوليّة، ومن النادر أن تحتاج إلى استدعاء الدالة valueOf يدويًا، إذ تستدعيها JavaScript تلقائيًا عند الحاجة. أمثلة استخدام valueOf()‎ var x = new String('Hello world'); console.log(x.valueOf()); // 'Hello world' دعم المتصفحات الميزة Chrome Firefox Internet Explorer Opera Safari الدعم ...

نمط Strict

نمط Strict أتى في معيار ECMAScript 5 لإضافة «صرامة» في تطبيق شيفرات JavaScript، لاحظ أنَّ نمط strict لا يُشكِّل قسمًا فرعيًا من JavaScript، وإنما له بنية خاصة به تختلف عن الشيفرات العادية. فالمتصفحات التي لا تدعم نمط strict ستُشغِّل الشيفرات بطريقة مختلفة عن المتصفحات التي تدعمه، لذا لا تعتمد على نمط strict دون اختبار دعمه أولًا من المتصفح. نمط Strict يُضيف عددًا من التغييرات على بنية JavaScript، فلم تعد تسكت JavaScript عن الأخطاء وإنما أصبحت ترمي استثناءات عند حدوثها؛ ونمط ...

الحقل button

عناصر <input> ذات النوع button تُعرَض كأزرار عادية، والتي يمكن برمجتها للتحكم بأي شيء في الصفحة عبر ربط دالة معالجة أحداث معها (التي تُعالِج الحدث click عادةً). وعلى الرغم من أنَّ عناصر <input> ذات النوع button صحيحة تمامًا في HTML، لكن من المفضّل استخدام عنصر <button> الجديد لإنشاء الأزرار، لأن له ميزات إضافية، مثل دعمه للقيمة menu في الخاصية type التي تعني أنَّ الزر يستعمل لتفعيل قائمة منبثقة، والسماح بإضافة نص اللافتة للعنصر <button> بين وسم البداية ووسم النهاية مما ...

Date.prototype.valueOf()‎

الدالة Number.prototype.valueOf()‎ تُعيد القيمة الأوليّة (primitive value) لأحد كائنات Date. البنية العامة dateObj.valueOf() القيمة المعادة كم ملي ثانية قد مضت بدءًا من ‎1 January 1970 00:00:00 UTC للتاريخ المعطى. الوصف تستدعي JavaScript الدالة valueOf لتحويل كائن Date إلى قيمة أوليّة، ومن النادر أن تحتاج إلى استدعاء الدالة valueOf يدويًا، إذ تستدعيها JavaScript تلقائيًا عند الحاجة. تُعيد هذه الدالة كم ملي ثانية قد مضت بدءًا من ‎1 January 1970 00:00:00 UTC للتاريخ المعطى. وهي مكافئة لاستخدام الدالة Date.prototype.getTime()‎. أمثلة مثال عن استخدام الدالة valueOf()‎: var x = new Date(56, 6, ...

Number.MIN_VALUE

الخاصية Number.MIN_VALUE تُمثِّل أصغر قيمة عددية قابلة للتمثيل في JavaScript. سمات الخاصية Number.MIN_VALUE قابلة للكتابة لا قابلة للإحصاء لا قابلة للضبط لا الوصف الخاصية MIN_VALUE تحمل أقرب قيمة إلى العدد 0، وليس أكبر قيمة سالبة يمكن تمثيلها في JavaScript. تملك الخاصية MIN_VALUE القيمة التقريبية 5e-324، والقيم الأصغر من MIN_VALUE ستحوّل إلى 0. لمّا كانت الخاصية MIN_VALUE ساكنةً (static)، فيجب استخدامها بالصيغة Number.MIN_VALUE دون الحاجة إلى إنشاء كائن Number جديد؛ لاحظ أنَّ استخدامها على كائنٍ أنشَأتَه (بدلًا من الكائن Number) سيؤدي ...

الحماية CSRF في Laravel

مقدمة يُسهّل Laravel حماية تطبيقك من الهجمات مُزوّرة الطلب عبر المواقع (cross-site request forgery) واختصارها CSRF. تزويرات الطلب عبر المواقع هن نوع من الاستغلال تُنفّذ فيها أوامر غير مُرخّصة نيابة عن المستخدم المصادق عليهالمُستوثق (authenticated user). يُولّد Laravel تلقائيًّا "رمز" CSRF لكل جلسة مستخدم نشطة يديرها التطبيق. يُستخدم هذا الرمز (token) للتحقّق من كون المستخدم المصادق عليه نفس الشخص الذي يقدّم الطلبات للتطبيق. يجب أن تضيف حقل CSRF مخفي في كل مرّة تعرّف فيها نموذج HTML في تطبيقك كي تتثبت ...

التابع ‎‎jQuery.makeArray()‎‎ في jQuery

jQuery.makeArray( obj )‎ القيم المعادة يعيد مصفوفةً (Array). الوصف يحوِّل هذا التابع كائنًا شبيهًا بمصفوفة إلى مصفوفة JavaScript حقيقية. jQuery.makeArray( obj )‎ أُضيف مع الإصدار: 1.4. obj الكائن المراد تحويله إلى مصفوفة فعليَّة. تعيد أغلب التوابع عمومًا، في jQuery و JavaScript كلاهما، كائنات شبيه بمصفوفة (array-like). فتعيد الدالة المنتجة ‎‎$()‎ مثلًا الكائن jQuery الذي يملك العديد من خاصِّيَّات المصفوفة (مثل الخاصِّيَّة length، والمعامل [] للوصول إلى المصفوفة ...إلخ.) إلا أنَّه ليس مصفوفة حقيقية تمامًا ويفتقد إلى بعض توابع المصفوفات المدمجة ...

Number.MAX_SAFE_INTEGER

الخاصية Number.MAX_SAFE_INTEGER تُمثِّل أكبر عدد صحيح «آمن» (safe integer) في JavaScript (وهو 253‎ -1). سمات الخاصية Number.MAX_SAFE_INTEGER قابلة للكتابة لا قابلة للإحصاء لا قابلة للضبط لا الوصف الخاصية MAX_SAFE_INTEGER تملك القيمة 9007199254740991، والفكرة المنطقية وراء هذا الرقم هو أنَّ لغة JavaScript تستخدم صيغة الأعداد العشرية المُعرَّفة في IEEE 754 مما يعني أنَّها قادرةٌ على تمثيل الأعداد بأمان بين القيمتين (253‎ -1)- و 253‎ -1. الأمان في هذا السياق يعني القدرة على تمثيل الأعداد الصحيحة كما هي ومقارنتها مقارنةً صحيحةً؛ فمثلًا نتيجة ...

Number.MIN_SAFE_INTEGER

الخاصية Number.MIN_SAFE_INTEGER تُمثِّل أصغر عدد صحيح «آمن» (safe integer) في JavaScript (وهو (253‎ -1)-). سمات الخاصية Number.MIN_SAFE_INTEGER قابلة للكتابة لا قابلة للإحصاء لا قابلة للضبط لا الوصف الخاصية MIN_SAFE_INTEGER تملك القيمة 9007199254740991-، والفكرة المنطقية وراء هذا الرقم هو أنَّ لغة JavaScript تستخدم صيغة الأعداد العشرية المُعرَّفة في IEEE 754 مما يعني أنَّها قادرةٌ على تمثيل الأعداد بأمان بين القيمتين (253‎ -1)- و 253‎ -1. الأمان في هذا السياق يعني القدرة على تمثيل الأعداد الصحيحة كما هي ومقارنتها مقارنةً صحيحةً؛ فمثلًا نتيجة ...

التابع ‎‎jQuery.makeArray()‎‎ في jQuery

jQuery.makeArray( obj )‎ القيم المعادة يعيد مصفوفةً (Array). الوصف يحوِّل هذا التابع كائنًا شبيهًا بمصفوفة إلى مصفوفة JavaScript حقيقية. jQuery.makeArray( obj )‎ أُضيف مع الإصدار: 1.4. obj الكائن المراد تحويله إلى مصفوفة فعليَّة. تعيد أغلب التوابع عمومًا، في jQuery و JavaScript كلاهما، كائنات شبيه بمصفوفة (array-like). فتعيد الدالة المنتجة ‎‎$()‎ مثلًا الكائن jQuery الذي يملك العديد من خاصِّيَّات المصفوفة (مثل الخاصِّيَّة length، والمعامل [] للوصول إلى المصفوفة ...إلخ.) إلا أنَّه ليس مصفوفة حقيقية تمامًا ويفتقد إلى بعض توابع المصفوفات المدمجة ...

أمان القيم الفارغة (Null) في لغة Kotlin

الأنواع Nullable والأنواع Non-Null يهدف نظام الأنواع في Kotlin إلى الحدِّ من أخطار القيمة الفارغة null في الشيفرات، إذ إنّ أحد الأخطاء الأكثر شيوعًا في لغات البرمجة -بما فيها لغة Java- هو أنّ محاولة الوصول إلى مرجعيّةٍ تحتوي على القيمة null سيؤدي إلى حدوث استثناءٍ مرجعيّ (reference exception)، ويُدعى هذا الاستثناء في لغة Java باسم NullPointerException أو NPE اختصارًا، أمّا Kotlin فهي تحدُّ من هذا الاستثناء ليقتصر على الحالات الآتية: استدعاءٌ صريحٌ بالشكل: throw NullPointerException()‎ استخدام المعامل !! (كما سيُشرح لاحقًا) ...

التابع ‎.focusin()‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎ في jQuery

‎.focusin( handler )‎ القيمة المعادة يُعيد كائنًا من النوع jQuery. الوصف يربط هذا التابع دالة معالج الحدث بحدث "focusin" من JavaScript. ‎.focusin( handler )‎ أُضيف مع الإصدار: 1.4. handler دالة على الشكل Function( Event eventObject )‎، وتُنفَّذ في كل مرة يُطلَق فيها الحدث. ‎.focusin( [eventData ], handler )‎ أُضيف مع الإصدار: 1.4.3. eventData كائن يحتوي على البيانات التي ستُمرر إلى معالج الحدث، ويمكن أن يكون من أي نوع من أنواع JavaScript. handler دالة على الشكل Function( Event eventObject )‎، وتُنفَّذ ...

الأنواع الأساسية في TypeScript

مقدمة علينا أن نتمكن من العمل مع أنواع بسيطة من البيانات لتكون برامجنا مُفيدة، مثل الأعداد (numbers)، والسلاسل النصية (strings)، الهياكل (structures)، القيم المنطقية (boolean values)، وغيرها من أنواع البيانات. تدعم TypeScript تقريبًا نفس الأنواع التي تدعمها لغة JavaScript، إضافة إلى نوعٍ جديدٍ للثوابت المتعددة (enumeration type) للمساعدة على بناء تطبيقات أفضل. القيم المنطقية (boolean) القيمتان ‎true‎ و‎false‎ من أكثر أنواع البيانات بساطة، وتُسمى في JavaScript وTypeScript بالقيمة المنطقية، أو النوع ‎boolean‎. let isDone: boolean = false; الأعداد (number) كما ...

أسئلة شائعة عن لغة Kotlin

ما هي لغة Kotlin؟ تُعدُّ Kotlin إحدى لغات البرمجة مفتوحة المصدر (OSS) والمكتوبة ستاتيكيًّا، وتستهدف كلًا من بيئة JVM و Android و JavaScript و Native، وقد طُوِّرت من قِبل شركة JetBrains بدءًا من العام 2010 حيث كانت مفتوحة المصدر منذ بداياتها الأولى، ونٌشر الإصدار الرسميّ Kotlin 1.0 في الشهر الثاني (شباط) من عام 2016. ما النسخة الحاليّة للغة Kotlin؟ نٌشر الإصدار الأخير للغة Kotlin في الأوّل من الشهر الثالث (آذار) من عام 2018 وهو الإصدار Kotlin 1.2.30. هل Kotlin مجانيّة؟ ...

Symbol.toStringTag

الرمز المعروف Symbol.toStringTag يُشير إلى خاصيةٍ تحمل سلسلةً نصيةً التي تُستخدَم في إنشاء الوصف النصي الافتراضي للكائن، وتستخدمها الدالة Object.prototype.toString()‎ داخليًا. سمات الخاصية Symbol.toStringTag قابلة للكتابة لا قابلة للإحصاء لا قابلة للضبط لا الوصف العديد من أنواع البيانات في لغة JavaScript لها وسوم نصية (tags): Object.prototype.toString.call('foo'); // "[object String]" Object.prototype.toString.call([1, 2]); // "[object Array]" Object.prototype.toString.call(3); // "[object Number]" Object.prototype.toString.call(true); // "[object Boolean]" Object.prototype.toString.call(undefined); // ...

الصنف ‎:indeterminate

الصنف الزائف ‎:indeterminate في CSS (أي pseudo-class) يُمثِّل أيّة نماذج تكون حالتها غير معروفة (indeterminate): input:indeterminate { background: lime; } يمكن أن يُطابِق هذا المُحدَّد العناصر الآتية: صندوق تأشير checkbox الذي ضُبِطَت الخاصية indeterminate فيه إلى true عبر JavaScript. أزرار الانتقاء radio عندما تكون جميع الأزرار التي لها نفس القيمة للخاصية name غير منتقاةً. عناصر <progress> في الحالة غير المعروفة. الشكل العام لهذا المحدد: :indeterminate أمثلة سنُطبِّق في المثال الآتي أنماط خاصة لعناصر <label> المرتبطة بحقول النموذج ذات الحالة غير المعروفة: ...

مجالات الأسماء والوحدات في TypeScript

ملاحظة حول المصطلحات تغيّرت طريقة استخدام المصطلحات في النسخة TypeScript 1.5، إذ كانت مجالات الأسماء (namespaces) تُسمّى قديمًا بمصطلح "الوحدات الداخليّة (internal modules)"، وما كان يُسمّى بالوحدات الخارجيّة (External modules) أصبح يُسمّى ببساطة بمصطلح "الوحدات (modules)" وهو ما سنغطّيه في هذه الصفحة. ويجب استخدام الكلمة المفتاحية ‎namespace‎ في الأماكن التي كانت تُستخدَم فيها الكلمة المفتاحية ‎module‎ للتصريح عن وحدة داخليّة في النسخ التي سبقت TypeScript 1.5، أي أنّ عليك استخدام ‎namespace X {‎ عوضًا عن ‎module X {‎ (انظر صفحة ...

Object.prototype.__proto__‎

الخاصية Object.prototype.__proto__‎ هي خاصية وصول (أي أنَّها دالة getter و setter) التي تسمح بالوصول إلى خاصية [[Prototype]] الداخلية للكائن (إما أن تكون قيمة هذه الخاصية هي كائن أو null) الذي اُستخدمَت عليه. الخاصية __proto__ مثيرةٌ للجدل، ومن المستحسن عدم استخدامها، ولم تكن موجودةً في الأساس في معيار ECMAScript، لكن المتصفحات الحديثة وضعتها في محركات JavaScript التي تستعملها على أيّ حال؛ ثم من فترة قريبة أصبحت الخاصية __proto__ خاصيةً معياريةً في ECMAScript 2015 بغرض توحيد سلوكها بين المتصفحات، لذا ستكون هذه ...

Function.name

الخاصية Function.name تُعيد اسم الدالة. سمات الخاصية Function.name قابلة للكتابة لا قابلة للإحصاء لا قابلة للضبط نعم لاحظ أنَّ المتصفحات التي كانت تدعم هذه الخاصية قبل أن تصبح معياريةً (في ECMAScript 2015) كانت تضبط السمة configurable إلى false (أي أنَّ هذه الخاصية غير قابلة للضبط). أمثلة اسم دالة مُصرَّح عنها الخاصية name تُعيد اسم الدالة المستخدم في تعبير التصريح عن الدوال: function doSomething() {} doSomething.name; // "doSomething" اسم دالة مُعرَّفة عبر الدالة البانية Function الدوال المُنشَأة عبر البنية new Function(...)‎ أو ...

التابع ‎‎jQuery.type()‎‎ في jQuery

jQuery.type( obj )‎ القيم المعادة يعيد سلسلة نصية (String). الوصف يعيد هذا التابع نوع JavaScript الداخلي للكائن المُمرَّر إليه. jQuery.type( obj )‎ أُضيفت مع الإصدار: 1.4.3 obj أي شيء، ويمثل الكائن المُراد معرفة نوعه الداخلي في JavaScript. يستعمل هذا التابع عددًا من التقنيات لتحديد نوع الكائن الذي سنحصل عليه بدقة، إذ يُحدَّد نوع الكائن كما يلي: إن كان الكائن غير مُعرَّف أو ذي قيمة عدميَّة، فستعاد حينئذٍ القيمة "undefined" أو القيمة "null" وفقًا لذلك: jQuery.type( undefined ) === "undefined"‎ jQuery.type() ...

التابع ‎‎jQuery.type()‎‎ في jQuery

jQuery.type( obj )‎ القيم المعادة يعيد سلسلة نصية (String). الوصف يعيد هذا التابع نوع JavaScript الداخلي للكائن المُمرَّر إليه. jQuery.type( obj )‎ أُضيفت مع الإصدار: 1.4.3 obj أي شيء، ويمثل الكائن المُراد معرفة نوعه الداخلي في JavaScript. يستعمل هذا التابع عددًا من التقنيات لتحديد نوع الكائن الذي سنحصل عليه بدقة، إذ يُحدَّد نوع الكائن كما يلي: إن كان الكائن غير مُعرَّف أو ذي قيمة عدميَّة، فستعاد حينئذٍ القيمة "undefined" أو القيمة "null" وفقًا لذلك: jQuery.type( undefined ) === "undefined"‎ jQuery.type() ...

الخاصية animation-play-state

الخاصية animation-play-state في CSS تُحدِّد إذا كانت الحركة تعمل أو متوقفة مؤقتًا، ويمكن الحصول على قيمة هذه الخاصية عبر JavaScript لمعرفة حالة الحركة، ويمكن أيضًا استعمال JavaScript لضبط قيمتها لتوقيف الحركة مؤقتًا أو استئنافها. بطاقة الخاصية القيمة الابتدائية running تُطبَّق على جميع العناصر. قابلة للوراثة لا قابلة للتحريك لا القيمة المحسوبة كما حُدِّدَت. /* قيمة واحدة */ animation-play-state: running; animation-play-state: paused; /* عدِّة قيم */ animation-play-state: paused, running, running; /* القيم العامة */ animation-play-state: inherit; animation-play-state: initial; animation-play-state: unset; استئناف الحركات المتوقفة مؤقتًا سيسمح بإكمالها من مكان توقفها، بدلًا ...

التابع ‎.focusout()‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎ في jQuery

‎.focusout( handler )‎ القيمة المعادة يُعيد كائنًا من النوع jQuery. الوصف يربط هذا التابع دالة معالج الحدث بحدث "focusout" من JavaScript. ‎.focusout( handler )‎ أُضيف مع الإصدار: 1.4. handler دالة على الشكل Function( Event eventObject )‎، تُنفَّذ في كل مرة يُطلَق فيها الحدث. ‎.focusout( [eventData ], handler )‎ أُضيف مع الإصدار: 1.4.3. eventData كائن يحتوي على البيانات التي ستُمرر إلى معالج الحدث، ويمكن أن يكون من أي نوع من أنواع JavaScript. handler دالة على الشكل Function( Event eventObject )‎، تُنفَّذ ...

Document.querySelector()‎

يُعيد التّابع Document.querySelector()‎ أول كائنٍ من النّوع Element الذي يُمثّل العنصر المُوافِق للمُحدِّد أو المحدّدات المعطاة. ويُعيد القيمة null في حالة لم يجِد أيّ عنصر. مُلاحظة: يتمّ البحث باستعمال المرور على العمق أولًا قبل التّرتيب (depth-first pre-order traversal) حول عقد المستند بدايةً من أول عنصر في هيكل المستند ويُكرّر (iterating) حول العقد في القائمة مرتّبةً حسب عدد العقد الأبناء. البنية العامة element = document.querySelector(selectors); selectors‎ سلسلة نصيّة من النّوع DOMString تحتوي على مُحدّد واحدٍ أو أكثر لمُوافقته مع عناصر المستند ...

خدمات jQuery

توفر التوابع الموجودة في هذا القسم بعض عدة خدمات ووظائف متنوعة. يصعب حصرها في تصنيف أو قسم واحد. ‎jQuery.dequeue()‎ ينفَّذ هذا التابع الدالة التالية الموجودة في طابور الانتظار للعناصر المتطابقة. ‎jQuery.each()‎ هذه الدالة هي دالة تكرار عامة تستعمل لتكرار تنفيذ دالة بسلاسة تامة عبر الكائنات والمصفوفات. عدد مرات تكرار تنفيذ الدالة على المصفوفات والكائنات الشبيهة بالمصفوفات التي لها الخاصِّيَّة length (مثل الكائن الذي يحوي وسائط دالةٍ) تنحصر بالمجال من 0 إلى length-1، إذ length هو عدد العناصر. أمَّا عدد مرات ...

jQuery/Topics a-z

‎.add()‎ إنشاء كائن jQuery جديد من العناصر المضافة إلى مجموعة من العناصر المطابقة. ‎.addBack()‎ يُضيف هذا التّابع مجموعة العناصر الموجودة سابقًا في المَكْدَس (stack) إلى المجموعة الحاليّة، مع إمكانيّة ترشيحها بشكل اختياري عن طريق مُحدِّد (selector). ‎.addClass()‎ يُضيف هذا التّابع الصّنف أو الأصناف المُحدَّدة لكل عنصر من مجموعة العناصر المُطابقة. ‎.after()‎ يُدخِل هذا التّابع المحتوى المُحدَّد عن طريق المُعامِل بعد كل عنصر من مجموعة العناصر المُطابقة. ‎.ajaxComplete()‎ يُسجِّل هذا التّابع مُعالِج الأحداث (Event handler) لاستدعائه عند اكتمال طلبات Ajax. ‎.ajaxError()‎ ...

الصنف ‎:disabled

الصنف الزائف ‎:disabled في CSS (أي pseudo-class) يُمثِّل أي عنصر مُعطَّل، ولا يمكن اختيار أو النقر على العنصر المعطَّل ولا الكتابة فيه، ولا يقبل التركيز (focus)، ويمكن أن يكون العنصر مُفعَّلًا (enabled) أي يمكن اختياره أو النقر عليه أو الكتابة فيه. input:disabled { background: #ccc; } الشكل العام لهذا المحدد: :disabled أمثلة هذا المثال يستعرض نموذجًا بسيطًا لشحن المشتريات، ويستخدم الحدث change في JavaScript للسماح للمستخدم بتفعيل أو تعطيل بعض حقول النموذج: <form action="#"> <fieldset id="shipping"> <legend>عنوان ...

Number.isNaN()‎

الدالة Number.isNaN()‎ تُحدِّد إذا كانت القيمة المُمرَّرة إليها هي NaN ومن النوع Number. وهذه الدالة هي نسخة أفضل من الدالة الأصلية العامة isNaN()‎. البنية العامة Number.isNaN(value) value القيمة التي ستُختبَر إن كانت NaN. القيمة المعادة قيمة منطقية Boolean تُشير إذا كانت القيمة هي NaN ومن النوع Number (وهي true) أم لا (وهي false). الوصف لمّا كانت نتيجة استخدام معاملي المقارنة == و === هي false عند مقارنة قيم NaN مع NaN، فأصبح من الضروري وجود الدالة Number.isNaN()‎، فحالة المقارنة السابقة ...

التابع ‎‎jQuery.inArray()‎‎ في jQuery

jQuery.inArray( value, array [, fromIndex ] )‎ القيم المعادة يعيد عددًا (Number). الوصف يبحث هذا التابع عن قيمة محدَّدة ضمن مصفوفةٍ ثمَّ يعيد قيمة فهرس موضعها (أو القيمة ‎-1 إن لم يجدها). jQuery.inArray( value, array [, fromIndex ] )‎ أُضيف مع الإصدار: 1.2. value أي شيء، ويمثل القيمة المراد البحث عنها. array المصفوفة المراد البحث ضمن عناصرها. fromIndex عددٌ (Number) يمثل قيمة فهرس أحد عناصر المصفوفة الذي يراد بدء عملية البحث عنده. القيمة الافتراضيَّة هي 0 أي البحث ضمن جميع ...

التابع ‎‎jQuery.inArray()‎‎ في jQuery

jQuery.inArray( value, array [, fromIndex ] )‎ القيم المعادة يعيد عددًا (Number). الوصف يبحث هذا التابع عن قيمة محدَّدة ضمن مصفوفةٍ ثمَّ يعيد قيمة فهرس موضعها (أو القيمة ‎-1 إن لم يجدها). jQuery.inArray( value, array [, fromIndex ] )‎ أُضيف مع الإصدار: 1.2. value أي شيء، ويمثل القيمة المراد البحث عنها. array المصفوفة المراد البحث ضمن عناصرها. fromIndex عددٌ (Number) يمثل قيمة فهرس أحد عناصر المصفوفة الذي يراد بدء عملية البحث عنده. القيمة الافتراضيَّة هي 0 أي البحث ضمن جميع ...

HTML/Topics/Scripting

لإنشاء محتوى تفاعلي في تطبيقات الويب، فتدعم HTML استخدام لغات السكربتات، وخصوصًا JavaScript، وهنالك عدِّة عناصر متوافرة لدعم هذه الإمكانية. العنصر الوصف <canvas> استخدم العنصر <canvas> مع الواجهة البرمجية الخاصة به لترسم الرسومات وتحركها. <noscript> يُعرِّف العنصر <noscript> قسمًا من شيفرات HTML التي ستُضاف إلى الصفحة إذا لم يكن العنصر <script> مدعومًا في المتصفح أو كان استخدام شيفرات JavaScript معطلًا من قِبل المستخدم. <script> تضمين أو الإشارة إلى سكربت قابل للتنفيذ.

التابع ‎‎.live()‎‎ في jQuery

‎.live( events, handler )‎ أهمل مع الإصدار: 1.7، وحذف مع الإصدار: 1.9. القيم المعادة يعيد كائنًا من النوع jQuery. الوصف يربط هذا التابع معالج حدث معين بجميع العناصر التي طابقت المحدِّد الحالي الآن وفي المستقبل. ‎.live( events, handler )‎ أُضيف مع الإصدار: 1.3. events سلسلة نصية تحتوي على نوع حدث JavaScript مثل "click" أو "keydown". يمكن للسلسلة النصية بدءًا من الإصدار jQuery 1.4 أن تحتوي على أنواع أحداث متعدِّدة مفصولةً بمسافة فارغة، أو أسماء أحداث مخصَّصة. handler دالة من الشكل ...

العنصر

استخدم العنصر <canvas> مع الواجهة البرمجية الخاصة به لترسم الرسومات وتحركها. المثال الآتي سيُضيف عنصر <canvas> إلى مستند HTML، مع تحديد ارتفاعه عبر الخاصية height وعرضه عبر الخاصية width، وسنوفِّر نصًا بديلًا إن لم يكن المتصفح قادرًا على عرض العنصر، فمن المفيد توفير محتوى بديل لزيادة قابلية الوصول لمحتوى العنصر. <canvas id="canvas" width="300" height="300"> نص بديل يصف ماذا يظهر العنصر <code>canvas</code>. </canvas> وبفرض أننا سنرسم مستطيلًا بأبعاد 80×80 باللون الأحمر، فستكون شيفرة JavaScript كالآتي: <script> var canvas = document.getElementById("canvas"); ...

Document.getSelection()‎

تنبيه: هذه تقنيّة تجريبيّة، انظر جدول دعم المتصفّحات قبل استخدام هذا التّابع في شيفرة إنتاجيّة. يعيد التّابع Document.getSelection‎()‎ كائنًا من النّوع Selection يمثّل مجال النّص المظلَّل من طرف المستخدم، أو موقع علامة الإقحام (caret) حاليًّا. البنية العامة var selection = documentOrShadowRootInstance.getSelection() المعاملات لا توجد مُعاملات. القيمة المعادة كائن من النّوع Selection. مثال function foo() { var selObj = document.getSelection(); alert(selObj); var selRange = selObj.getRangeAt(0); // نفّذ عمليّة ...

وحدة الخيوط العاملة (Worker Threads) في Node.js

مؤشر الاستقرار: 1 - تجريبي توفر وحدة worker طريقة لإنشاء بيئات متعددة تعمل علي خيوط مستقلة، ولإنشاء قنوات رسائل بينها. ويمكن الوصول إليها باستخدام الراية ‎--experimental-worker flag بالإضافة إلى: const worker = require('worker_threads'); وتفيد الخيوط العاملة (Workers) في أداء عمليات JavaScript كثيفة الاستخدام لوحدة المعالجة المركزية؛ ويجب ألَّا تستخدم في عمليات الإدخال والإخراج I/O، إذ تتعامل آلياتُ Node.js المدمجة لتنفيذ العمليات بشكل غير متزامن معها بشكل أكثر كفاءة من خيوط Worker. علي عكس العمليات التابعة أو عند استخدام وحدة cluster، يمكن ...

عرض (100 السابقة | 100 التالية) (20 | 50 | 100 | 250 | 500).