للاحتفال بالذكرى السنوية الرابعة لـ jQuery، أصدر فريق jQuery الرسمي إصدار jQuery 1.4 رسميًا. في هذا الإصدار، قام فريق jQuery الرسمي بالكثير من أعمال الترميز والاختبار والتوثيق، ومن الطبيعي أن يتحسن كثيرًا مقارنة بالإصدار السابق.
تنقسم هذه المقالة إلى جزأين. يقدم الجزء الأول بشكل أساسي الاستخدامات والتحديثات ذات الصلة لإصدار jQuery 1.4. ويستخدم الجزء الثاني بعض أمثلة التعليمات البرمجية لإظهار الطرق المحدثة والطرق المضافة حديثًا.
[التنزيل والاتصال]
كالعادة، يوفر المسؤول نسختين من jQuery، إحداهما نسخة مضغوطة (مضغوطة باستخدام Google Closure Compiler ، سابقًا باستخدام YUI)، والأخرى نسخة غير مضغوطة (تستخدم للتصحيح والقراءة).
لقد تم اقتراح سابقًا تحميل jQuery من خلال خادم Google لتحسين سرعة التحميل . والآن، لا يزال بإمكاننا استدعاء ملف الإصدار المضغوط jQuery 1.4 من خلال خادم Google، كما يلي:
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js" type="text/javascript"><!--mce:0--></script >
【ميزات وتغييرات جديدة 】
في jQuery 1.4، تمت إعادة كتابة العديد من أساليب jQuery الشائعة الاستخدام. ولم تعد هذه التحسينات أسهل في الاستخدام فحسب، بل جلبت أيضًا تحسينات كبيرة في الأداء.
ملاحظة: ما يلي هو نظرة عامة، يرجى الرجوع إلى شرح الكود في المقالة التالية لمعرفة أي تفاصيل غير معروفة.
1. أضف وظائف الضبط لبعض الطرق
في الإصدارات السابقة، كان بإمكاننا تمرير دالة إلى التابع attr() وتعيين القيمة المرجعة للدالة إلى إحدى السمات. في الإصدار 1.4، تمت إضافة هذه الوظيفة إلى المزيد من الأساليب: .css() و .attr() و .val() و .html() و .text() و .append() و .prepend() و before(). و .after() و .replaceWith() و .wrap() و .wrapInner() و .offset() و .addClass() و .removeClass() و .toggleClass().
بالإضافة إلى ذلك، في الطرق التالية، يمكنك أيضًا تمرير القيمة الحالية كمعلمة ثانية لوظيفة الإعداد لاستخدامها بواسطة وظيفة الإعداد: .css(), .attr(), .val(), .html() و .text( ) و .append() و .prepend() و .offset() و .addClass() و .removeClass() و .toggleClass(). على سبيل المثال:
jQuery('<img src="enter.png" alt="أدخل اسمك" />')
.attr("alt", function(index, value) {
إرجاع "من فضلك،" + القيمة؛
});
2. تم تحديث الطريقة الأساسية للتسلسل في jQuery، jQuery.param()
في السابق، كانت النتيجة المتسلسلة لـ {foo: ["bar", "baz"]} هي "foo=bar&foo=baz"، لكنها الآن "foo[]=bar&foo[]=baz".
الغرض من هذا التغيير هو إخبار الطرف المتلقي بأن ما تم تمريره هو كائن مصفوفة.
3. في jQuery.ajax ، عندما لا يتم تحديد سمة dataType، سيتم تحديدها تلقائيًا بناءً على نوع محتوى الاستجابة.
على سبيل المثال: إذا كان الكائن الذي تم إرجاعه بواسطة طلب ajax من نوع json (application/json)، فسيتم تحديد نوع البيانات تلقائيًا على أنه "json" (إذا لم يتم تحديده).
4. أضف دعمًا لـ Etag في طلب jQuery.ajax .
في السابق، لم يرسل jQuery قيمة If-None-Match في الرأس في طلب ajax (أي أنه لم يدعم Etag)، وتم تجاهل ذاكرة التخزين المؤقت للمتصفح بشكل افتراضي. ويمكن الآن تمكينه عن طريق تحديد السمة ifModified.
نصيحة: إذا كنت لا تعرف شيئًا عن رؤوس http، فمن المستحسن قراءة هذه المقالة .