جی‌کوئری

جی‌کوئری یک کتابخانه جاوااسکریپت سبک‌وزن چند مرورگری است که برای ساده سازی نوشتن اسکریپ‌های سمت-مشتری یا به عبارتی سمت Client، در صفحات وب طراحی شده و امروزه محبوب‌ترین کتابخانه جاوااسکریپت در حال استفاده است.
جی کوئری نرم‌افزار بازمتن و رایگان است که تحت پروانه "MIT" منتشر می‌شود. ساختار کتابخانه جی‌کوئری به گونه‌ای طراحی شده‌است که دسترسی به عناصر صفحه را آسان‌تر کرده باشد. می‌توان با آن حرکات انیمیشن ایجاد و از رویداد (به انگلیسی: Event)‌های صفحه استفاده کرد و به وسیله آن می‌توان نرم‌افزارهای مبتنی بر ای‌جکس را ایجاد و توسعه داد.جی‌کوئری همچنین این اختیار را به برنامه نویسان می‌دهد که افزونه‌هایی برای این کتابخانه جاوااسکریپت ایجاد کنند. جدا از این‌ها، جی‌کوئری به توسعه دهندگان این اختیار را می‌دهد که تکه برنامه‌های سطح پایین مبادله‌ای (ارتباط مرورگر با کاربر) یا انیمیشنی و حتی افکت‌های پیشرفته و سطح بالا و اشیاء فرضی را ایجاد کنند. به‌کارگیری همه این اجزای جی‌کوئری کمک می‌کند تا صفحات وب قدرتمند و داینامیک (پویا)، راحت‌تر ایجاد شوند.
ویژگی‌ها
جی‌کوئری شامل ویژگی‌های زیر است:
دسترسی به عناصر موجود در پرونده و تغییر در آنها.
کنترل آسان و قدرتمند‌تر رویدادها (Events).
تغییر در آرایش و چینش صفحه (دقیقا کاری که با CSS انجام میشود).
ایجاد افکت و حرکات انیمیشن.
توسعه افزونه‌هایی بر پایه جی‌کوئری.
استفاده
کتابخانه جی‌کوئری معمولا (بدون افزونه) تنها یک فایل جاوااسکریپت است. فایل جی‌کوئری را می‌توان به شیوه‌های مختلفی به صفحه وب متصل کرد.
استفاده از رابط برنامه‌نویسی گوگل برای اضافه کردن جی‌کوئری
google.load("jquery", "1.4.2");
</script
استفاده از شبکه توزیع محتوای گوگل برای اضافه کردن جی‌کوئری
استفاده از شبکه توزیع محتوای مایکروسافت برای اضافه کردن جی‌کوئری
استفاده از محتوای جی‌کوئری
دسترسی و انجام تغییرات بر روی یک گروه از عناصر صفحه (DOM) با تابع $ شروع می‌شود و به همراه آن یک رشته انتخاب گر (Selector) سی‌اس‌اس می‌آید که در نتیجه، جی‌کوئری می‌تواند به عناصر صفحه وب دسترسی پیدا کند و ان‌ها را تغییر دهد.
$("p.myclass").hide();
در این نمونه کد ساده، با استفاده از تابع $ ، عناصری که خواهان اعمال تغییر روی آن‌ها هستیم را انتخاب کردیم. در این مورد، انتخاب ما تمامی تگ‌های p (پاراگراف) هستند که دارای کلاس "myclass" باشند. سپس با استفاده از تابع hide ، عناصر انتخاب شده را پنهان میکنیم.
تابع each.$ ، روش مفید و آسانی است که برای عناصر داخل یک آرایه، یک عمل مشابه را انجام دهیم.
$.each(1,2,3, function()
document.write(this + 1);
این تابع ارقام ۲۳۴ را در پرونده می‌نویسد.
این امکان وجود دارد که درخواست‌های مبتنی بر ای‌جکس از طریق ajax.$ و متدهای وابسته تبادل شود:
$.ajax({
type: "POST",
url: "some.php",
data: "name=John-location=Boston",
success: function(msg){
alert("Data Saved: " + msg);
در بالا برنامه، داده‌های name=john و location=boston را به صفحه some.php ارسال می‌کند و وقتی این درخواست با موفقیت به پایان رسید تابعی فراخوانده می‌شود تا این اتفاقات را به کاربر اعلام کند.
تاریخچه نسخه‌ها
Version number
Release date
Latest update
Size Prod (KB)
Additional notes
1.0
First stable release
1.1
1.2
1.2.6
54
1.3
1.3.2
55.9
Sizzle Selector Engine introduced into core
1.4
1.4.4
76
1.5
1.5.2
83
Deferred callback management, ajax module rewrite
1.6
1.6.4
89
Significant performance improvements to the attr() and val() functions
1.7
1.7.2 ()
92
New Event APIs: .on() and .off(), while the old APIs are still supported.
1.8
1.8.3 ()
91.4
Sizzle Selector Engine rewritten, improved animations and $(html, props) flexibility.
1.9
1.9.1 ()
90
Removal of deprecated interfaces and code cleanup
1.10
1.10.2 ()
91
Incorporated bug fixes and differences reported from both the 1.9 and 2.0 beta cycles
1.11
1.11.3 ()
95.9
1.12
1.12.4 ()
95
2.0
2.0.3 ()
81.1
Dropped IE 6–8 support for performance improvements and reduction in filesize
2.1
2.1.4 ()
82.4
2.2
2.2.4 ()
85.6
3.0
3.0.0 ()
86.3
Promises/A+ support for Deferreds, $.ajax and $.when, .data() HTML5-compatible
3.1
3.1.1 ()
86.3
jQuery.readyException added, ready handler errors are now not silenced
3.2
3.2.1 ()
84.6
Added support for retrieving contents of elements, and deprecation of various old methods.
3.3
3.3.1 ()
84.8
Deprecation of old functions, functions that accept classes now also support them in array format.
جاوااسکریپت محجوب
پانویس‌هاو مراجع