jQuery ajaxreadystate البرنامج المساعد
يعد تطبيق jQuery AJAX محدودًا إلى حد ما لأنه لا يوفر طريقة للاستجابة لأحداث readystatechange
التي يتم إطلاقها أثناء طلب AJAX. تنص وثائق jQuery.ajax
API في الواقع على ما يلي.
لم يتم توفير آلية
onreadystatechange
، ومع ذلك، منذdone
،fail
always
، وstatusCode
يغطي جميع المتطلبات التي يمكن تصورها.
على الرغم من أن هذا البيان ينطبق على معظم حالات الاستخدام، فماذا لو كنت تريد الوصول إلى رؤوس الاستجابة أو رمز الحالة قبل اكتمال الطلب بالكامل، أو الوصول إلى نص الاستجابة أثناء تدفقه؟
من الواضح أن jQuery لا يوفر هذه الوظيفة بسبب مشكلات توافق المتصفح، لذلك يضيف هذا المكون الإضافي هذه الوظيفة الإضافية للمتصفحات التي تدعم هذه الميزات (راجع ملاحظات التوافق أدناه).
يعمل هذا البرنامج الإضافي عن طريق إضافة طريقة جديدة jQuery.ajaxreadystate
، والتي تعمل بمثابة غلاف لـ jQuery.ajax
، وتوسيع الوظائف وتحديث كائن jqXHR
لإزالة القيود وتحديث الخصائص مع تغير readyState
.
يمكنك استخدام jQuery.ajaxreadystate
تمامًا مثلما تستخدم jQuery.ajax
، باستثناء أن لديك طريقة إضافية واحدة يمكنك تعريفها، وهي طريقة readystate
.
jQuery . ajaxreadystate ( {
readystate : function ( jqXHR , readyState ) {
}
} ) ;
سيتم تفعيل هذه الطريقة في كل مرة يُطلق فيها الطلب حدث readystatechange
، وسيتم تمرير كائن jqXHR
المحدث و readyState
الحالي.
يمكنك تنزيل أحدث إصدار ثابت ومصغر من قسم الإصدارات في هذا المستودع. وبدلاً من ذلك، يمكنك استنساخ تنزيل المستودع من مديري الحزم.
###دعم كامل
المتصفحات التالية مدعومة بالكامل.
###مدعوم جزئيًا
المتصفحات التالية مدعومة جزئيًا بسبب القيود الفنية للمتصفح نفسه. تمت الإشارة إلى مشكلات التوافق.
responseText
غير متاح حتى تصبح readyState
4
.readystatechange
واحد فقط لـ readyState
3
في مرحلة ما أثناء عملية النقل.responseText
غير متاح حتى تصبح readyState
4
.status
statusText
حتى تصبح readyState
4
.getAllResponseHeaders
و getResponseHeader
null
حتى تصبح readyState
4
.readystate
فقط لـ readyState
1
.responseText
غير متاح حتى تصبح readyState
4
.status
statusText
حتى تصبح readyState
4
.getAllResponseHeaders
و getResponseHeader
null
حتى تصبح readyState
4
.getAllResponseHeaders
و getResponseHeader
null
حتى تصبح readyState
3
.getAllResponseHeaders
و getResponseHeader
null
حتى تصبح readyState
3
.readystatechange
واحد فقط لـ readyState
3
في مرحلة ما أثناء عملية النقل.status
statusText
حتى تصبح readyState
3
.readystatechange
واحد فقط لـ readyState
3
في مرحلة ما أثناء عملية النقل.status
statusText
حتى تصبح readyState
3
.readystatechange
واحد فقط لـ readyState
3
في مرحلة ما أثناء عملية النقل.getAllResponseHeaders
و getResponseHeader
null
حتى تصبح readyState
4
.لم يتم اختبار المتصفحات الأقدم من تلك المذكورة، ولكن قد تكون مدعومة جزئيًا أو كليًا.
هذا البرنامج المساعد متوافق مع jQuery 1.5+ وjQuery 2.0.0+.
لإنشاء بناء مصغر، قم بتشغيل هذا الثناء من الدليل الجذر لهذا المستودع.
$ npm run build
إذا وجدت خطأً أو كانت لديك مشكلات في التوافق غير موثقة أعلاه، فيرجى فتح تذكرة ضمن قسم المشكلات لهذا المستودع.
راجع LICENSE.txt
إذا لم يعمل هذا الترخيص بالنسبة لك، فلا تتردد في الاتصال بي.
إذا وجدت برنامجي مفيدًا، فيرجى التفكير في تقديم تبرع متواضع على موقع الويب الخاص بي على alexomara.com.