الفرق بين المراجعتين ل"jQuery/ajaxStart"

من موسوعة حسوب
اذهب إلى التنقل اذهب إلى البحث
(أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE:التابع <code>‎.ajaxStart()‎‎</code>‎ في jQuery}}</noinclude>')
 
سطر 1: سطر 1:
 
<noinclude>{{DISPLAYTITLE:التابع <code>‎.ajaxStart()‎‎</code>‎ في jQuery}}</noinclude>
 
<noinclude>{{DISPLAYTITLE:التابع <code>‎.ajaxStart()‎‎</code>‎ في jQuery}}</noinclude>
 +
 +
== <code>‎.ajaxStart( handler )‎</code> ==
 +
 +
=== القيمة المعادة ===
 +
كائن [[jQuery/jQuery|jQuery]].
 +
 +
=== الوصف ===
 +
يُستخدَم التابع <code>‎.ajaxStart()</code>‎ في تسجيل مُعالِج الأحداث (Event handler) لاستدعائه عند بدء أول طلب Ajax، يُعدُّ هذا التّابع حدثًا من [[jQuery/Ajax Events|أحداث Ajax]].
 +
 +
=== <code>‎.ajaxStart( handler )‎</code> ===
 +
أضيفت في الإصدار: 1.0.
 +
 +
==== <code>handler</code> ====
 +
يُمثِّل الدالة المطلوب استدعاؤها.
 +
 +
عندما يكون طلب Ajax على وشك أن يُرسَل، تتحقّق jQuery ما إذا كانت هناك طلبات Ajax أخرى، وإن لم يكن هناك أي طلب قيد المعالجة تُطلِق jQuery الحدث <code>ajaxStart</code>، وتُنفَّذ عندها كافّة مُعالجات الأحداث المُسجَّلة مع التّابع <code>‎.ajaxStart()</code>‎.
 +
 +
لمشاهدة مثال عملي عن هذا التّابع نُجهِّز طلب بسيط لتحميل Ajax:<syntaxhighlight lang="html">
 +
<button class="trigger">إطلاق مُعالِج الحدث</button>
 +
<div class="result"></div> <!--تُعرَض هنا النتيجة-->
 +
<div class="log"></div> <!--تُعرَض هنا رسالة السّجل-->
 +
 +
</syntaxhighlight>أرفِق مُعالِج الحدث (event handler) إلى أي عنصر:<syntaxhighlight lang="javascript">
 +
$( document ).ajaxStart(function() {
 +
 $( ".log" ).text( ".‏ajaxStart‏أُطلِق مُعالِج الحدث ‏" );
 +
});
 +
 +
 +
</syntaxhighlight>نفذ الآن طلب Ajax باستخدام أي تابع jQuery:<syntaxhighlight lang="javascript">
 +
$( ".trigger" ).click(function() {
 +
 $( ".result" ).load( "ajax/test.html" );
 +
});
 +
 +
 +
</syntaxhighlight>عندما يضغط المستخدم على العنصر الذي يمتلك الصنف trigger ويُرسَل طلب Ajax، ستُعرَض رسالة السّجل.
 +
 +
=== ملاحظات إضافية ===
 +
بدءًا من إصدار jQuery 1.9 أصبح إرفاق مُعالِجات الأحداث لأحداث Ajax العامة (jQuery global Ajax events) بالمستند إجباريًّا، بما في ذلك مُعالِجات الأحداث المُضافة عن طريق التّابع <code>‎.ajaxStart()‎</code>.
 +
 +
إن استدعينا التابع ‎<code>[[JQuery/jQuery/ajax|$.ajax()]]</code>‎ أو ‎<code>[[JQuery/jQuery/ajaxSetup|$.ajaxSetup()]]</code>‎ مع تعيين الخيار <code>global</code> إلى القيمة <code>false</code>، فلن يُنفَّذ التّابع <code>‎.ajaxStart()</code>‎.
 +
 +
=== أمثلة ===
 +
إظهار رسالة جارٍ التحميل عند بدء طلب Ajax (وعدم وجود أي طلب آخر فعال):<syntaxhighlight lang="javascript">
 +
$( document ).ajaxStart(function() {
 +
 $( "#loading" ).show();
 +
});
 +
 +
 +
</syntaxhighlight>
 +
 +
== مصادر ==
 +
* [http://api.jquery.com/ajaxStart/ صفحة التابع ‎‎‎.ajaxStart()‎‎ في توثيق jQuery الرسمي].
 +
[[تصنيف:jQuery]]
 +
[[تصنيف:jQuery Method]]
 +
[[تصنيف:jQuery Ajax]]

مراجعة 16:08، 7 مايو 2018


‎.ajaxStart( handler )‎

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

كائن jQuery.

الوصف

يُستخدَم التابع ‎.ajaxStart()‎ في تسجيل مُعالِج الأحداث (Event handler) لاستدعائه عند بدء أول طلب Ajax، يُعدُّ هذا التّابع حدثًا من أحداث Ajax.

‎.ajaxStart( handler )‎

أضيفت في الإصدار: 1.0.

handler

يُمثِّل الدالة المطلوب استدعاؤها.

عندما يكون طلب Ajax على وشك أن يُرسَل، تتحقّق jQuery ما إذا كانت هناك طلبات Ajax أخرى، وإن لم يكن هناك أي طلب قيد المعالجة تُطلِق jQuery الحدث ajaxStart، وتُنفَّذ عندها كافّة مُعالجات الأحداث المُسجَّلة مع التّابع ‎.ajaxStart()‎.

لمشاهدة مثال عملي عن هذا التّابع نُجهِّز طلب بسيط لتحميل Ajax:

<button class="trigger">إطلاق مُعالِج الحدث</button>
<div class="result"></div> <!--تُعرَض هنا النتيجة-->
<div class="log"></div> <!--تُعرَض هنا رسالة السّجل-->

أرفِق مُعالِج الحدث (event handler) إلى أي عنصر:

$( document ).ajaxStart(function() {
 $( ".log" ).text( ".‏ajaxStart‏أُطلِق مُعالِج الحدث ‏" );
});

نفذ الآن طلب Ajax باستخدام أي تابع jQuery:

$( ".trigger" ).click(function() {
 $( ".result" ).load( "ajax/test.html" );
});

عندما يضغط المستخدم على العنصر الذي يمتلك الصنف trigger ويُرسَل طلب Ajax، ستُعرَض رسالة السّجل.

ملاحظات إضافية

بدءًا من إصدار jQuery 1.9 أصبح إرفاق مُعالِجات الأحداث لأحداث Ajax العامة (jQuery global Ajax events) بالمستند إجباريًّا، بما في ذلك مُعالِجات الأحداث المُضافة عن طريق التّابع ‎.ajaxStart()‎.

إن استدعينا التابع ‎$.ajax()‎ أو ‎$.ajaxSetup()‎ مع تعيين الخيار global إلى القيمة false، فلن يُنفَّذ التّابع ‎.ajaxStart()‎.

أمثلة

إظهار رسالة جارٍ التحميل عند بدء طلب Ajax (وعدم وجود أي طلب آخر فعال):

$( document ).ajaxStart(function() {
 $( "#loading" ).show();
});

مصادر