جی‌کوئری

از ویکی‌پدیا، دانشنامهٔ آزاد
پرش به: ناوبری، جستجو
جی‌کوئری
JQuery logo text.svg
نویسنده(های) اصلی جان رزیگ
توسعه‌دهنده(ها) تیم جی کوئری
انتشار اولیه ۲۰۰۶
انتشار پایدار ۱٫۸٫۲ / ۲۰ سپتامبر ۲۰۱۲؛ ۷۳۱ روز پیش
وضعیت توسعه فعال
نوشته شده به جاوااسکریپت
سیستم‌عامل چندسکویی
زبان‌های در دسترس انگلیسی
گونه چارچوب نرم‌افزاری تحت وب
پروانه دو پروانه:
GPL and MIT
وب‌گاه jquery.com

جی‌کوئری یا jQuery یک کتابخانه جاوااسکریپت سبک وزن چند مرورگری می‌باشد که برای ساده کردن نوشتن اسکریپ‌های سمت-مشتری دراچ تی ام‌ال (HTML) طراحی شده است.[۱] جی کوئری امروزه محبوبترین کتابخانه جاوااسکریپت در حال استفاده است.[۲][۳]

جی کوئری نرم‌افزار بازمتن و رایگان است که تحت دو پروانه GPL و MIT منتشر می‌شود.[۴] دستور زبان جی کوئری به گونه‌ای طراحی شده است که عمل هدایت یه پرونده را آسان تر کرده باشد، بدین صورت که می‌توان حرکات انیمیشین ایجاد کرد و رویدادهای صفحه استفاده کند و به وسیله آن می‌توان نرم‌افزارهای مبتنی بر ای‌جکس را ایجاد و توسعه داد.
جی کوئری همچنین این اختیار را به برنامه نویسان می‌دهد که افزایه‌هایی برای کتابخانه جاوااسکریپت ایجاد کنند.
جدا از این‌ها جی کوئری به توسعه دهندگان این اختیار را می‌دهد که تکه برنامه‌های سطح پایین مبادله‌ای (ارتباط مرورگر با کاربر) و یا انیمیشنی و حتی افکت‌های پیشرفته و سطح بالا و ایجاد اشیا فرضی را ایجاد کنند. به کارگیری همه این اجزای جی کوئری کمک می‌کند صفحات وب قدرتمند و داینامیک (پویا) داشته باشیم.

ویژگی‌ها[ویرایش]

جی‌کوئری شامل ویژگی‌های زیر می‌باشد:

  • به عناصر موجود در پرونده دسترسی پیدا کرد و ان‌ها تغییر و دستکاری نمود.
  • کنترل اسان و قدرتمند تر رویدادها(Events)
  • دستکاری CSS--
  • ایجاد افکت و حرکات انیمیشین
  • توسعه دادن افزایه‌ها
  • برنامه‌های کوچک سودمند

استفاده[ویرایش]

کتابخانه جی‌کوئری معمولاً تنها یک فایل حاوااسکریپت است که شامل همه DOMها و Eventها و افکت‌های و تابع‌های مربوط به ای‌جکس می‌شود. فایل جی‌کوئری را می‌توان به طرق مختلفی به صفحه وب متصل کرد که در ادامه این روش‌ها را معرفی می‌کنیم.

<script type="text/javascript" src="jQuery.js"></script>

جی‌کوئری همچنین می‌تواند از طریق شبکه توزیع محتوای گوگل در صفحه بارگذاری شود.[۵]

<script type="text/javascript" src="http://www.google.com/jsapi"></script>
 
<script>
google.load("jquery", "1.4.2");
</script

یا از طریق HTTP

<script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>

مایکروسافت همچنین جی کوئری را بر روی سرویس شبکه توزیع محتوای CDN میزبانی می‌کند.

<script src="http://ajax.microsoft.com/ajax/jquery/jquery-1.4.2.min.js" type="text/javascript"></script>

برای استفاده از جی‌کوئری دو شیوه وجود دارد:

  • به وسیله تابع $ که از الگوی factory method ایجاد شده است. این تابع‌ها معمولاً دستورات نامیده می‌شوند.
  • به وسیله توابع prefixed. $ این‌ها توابع سودمندی هستند که مستقیماً به اشیا سروکار ندارند.

برای نمونه دسترسی و انجام تغییرات بر روی یک گره DOM با تابع $ شروع می‌شود و به همراه یک رشته انتحاب گر(selector)سی اس اس خواهد امد که در نتیجه جی کوئری می‌تواند به عناصر صفحه وب دسترسی پیدا کند و ان‌ها را دستکاری بنماید. برای مثال:

$("div.test").add("p.quote").addClass("blue").slideDown("slow");

در این خط ابتدا تمام تگ‌های p که quote صفت کلاس ان‌ها است و در تگ div که صفت کلاس ان test است را پیدا کرده و به هرکدام از عناصر پیدا کرده یک صفت کلاس blue اضافه کرده و بعد از ان سرعت حرکت انیمیشنی ان‌ها را اهسته قرار می‌دهد.
در حقیقت توابع $ و add مجموعه عناصر مورد نیاز را واکشی کردند در حالی که توابع addClass و slidedown گره‌های بازگردانده شده تحت تاثیر قرار دادند.

متدها پیشوندی. $ متدهای مفید و اسانی هستند که تنظیمات و رفتارهای سراسری را تحت تاثیر قرار می‌دهند. برای مثال در ادامه از از تابعی به نام 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 ارسال می‌کند و وقتی این درخواست با موفقیت به پایان رسید تابعی فراخوانده می‌شود تا این اتفاقات را به کاربر اعلام کند.

تاریخچه نسخه‌ها[ویرایش]

شماره نسخه تاریخ انتشار توضیحات
۱٫۰ August 26, 2006 First stable release
۱٫۰٫۱ August 31, 2006
۱٫۰٫۲ October 9, 2006
۱٫۰٫۳ October 27, 2006
۱٫۰٫۴ December 12, 2006 Last 1.0 bug fix
۱٫۱ January 14, 2007
۱٫۱٫۱ January 22, 2007
۱٫۱٫۲ February 27, 2007
۱٫۱٫۳ July 1, 2007
۱٫۱٫۳٫۱ July 5, 2007
۱٫۱٫۴ August 24, 2007
۱٫۲ September 10, 2007
۱٫۲٫۱ September 16, 2007
۱٫۲٫۲ January 15, 2008
۱٫۲٫۳ February 8, 2008
۱٫۲٫۴ May 19, 2008
۱٫۲٫۵ May 21, 2008 Fix for bad build of 1.2.4
۱٫۲٫۶ May 24, 2008
۱٫۳ January 14, 2009 Sizzle Selector Engine introduced into core
۱٫۳٫۱ January 21, 2009
۱٫۳٫۲ February 20, 2009
۱٫۴ January 14, 2010
۱٫۴٫۱ January 25, 2010
۱٫۴٫۲ February 19, 2010
۱٫۴٫۳ October 16, 2010
۱٫۴٫۴ November 11, 2010
۱٫۵ January 31, 2011 Deferred callback management, ajax module rewrite
۱٫۵٫۱ February 24, 2011
۱٫۵٫۲ March 31, 2011
۱٫۶ May 3, 2011 Significant performance improvements to the attr() and val() functions
۱٫۶٫۱ May 12, 2011
۱٫۶٫۲ June 30, 2011
۱٫۶٫۳ September 1, 2011
۱٫۶٫۴ September 12, 2011
۱٫۷ November 3, 2011 New Event APIs:.on() and.off(), while the old APIs are still supported.
۱٫۷٫۱ November 21, 2011
۱٫۷٫۲ March 21, 2012
۱٫۸٫۰ August 9, 2012 Sizzle Selector Engine rewritten, improved animations and $(html, props) flexibility.
۱٫۸٫۱ August 30, 2012
۱٫۸٫۲ September 20, 2012
۱٫۹٫۰ early 2013 Removal of deprecated interfaces and code cleanup
۲٫۰٫۰ early 2013 Dropping IE6-8 support for performance improvements and reduction in filesize

جستارهای وابسته[ویرایش]

پانویس‌هاو مراجع[ویرایش]