جی‌کوئری

کتابخانه جاوا اسکریپت

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

جی‌کوئری
نویسنده(های)
اصلی
جان رزیگ
توسعه‌دهنده(ها)تیم جی کوئری
مخزن
سیستم‌عاملچندسکویی (تحت وب)
مجوزMIT
وبگاه

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

ویژگی‌ها

ویرایش

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

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

استفاده

ویرایش

کتابخانهٔ جی‌کوئری معمولاً (بدون افزونه) تنها یک فایل جاوااسکریپت است. فایل جی‌کوئری را می‌توان به شیوه‌های مختلفی به صفحه وب متصل کرد.

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

استفاده از رابط برنامه‌نویسی گوگل برای اضافه کردن جی‌کوئری

ویرایش
<script type="text/javascript" src="//google.com/jsapi"></script>

<script>
google.load("jquery", "1.4.2");
</script

استفاده از شبکه توزیع محتوای گوگل برای اضافه کردن جی‌کوئری

ویرایش
<script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>

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

ویرایش
<script src="//ajax.microsoft.com/ajax/jquery/jquery-1.4.2.min.js" type="text/javascript"></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
۱٫۰ ۲۶ اوت ۲۰۰۶ (۲۰۰۶-08-۲۶) First stable release
۱٫۱ ۱۴ ژانویه ۲۰۰۷ (۲۰۰۷-01-۱۴)
۱٫۲ ۱۰ سپتامبر ۲۰۰۷ (۲۰۰۷-09-۱۰) ۱٫۲٫۶ ۵۴
۱٫۳ ۱۴ ژانویه ۲۰۰۹ (۲۰۰۹-01-۱۴) ۱٫۳٫۲ ۵۵٫۹ Sizzle Selector Engine introduced into core
۱٫۴ ۱۴ ژانویه ۲۰۱۰ (۲۰۱۰-01-۱۴) ۱٫۴٫۴ ۷۶
۱٫۵ ۳۱ ژانویه ۲۰۱۱ (۲۰۱۱-01-۳۱) ۱٫۵٫۲ ۸۳ Deferred callback management, ajax module rewrite
۱٫۶ ۳ مه ۲۰۱۱ (۲۰۱۱-05-۰۳) ۱٫۶٫۴ ۸۹ Significant performance improvements to the attr() and val() functions
۱٫۷ ۳ نوامبر ۲۰۱۱ (۲۰۱۱-11-۰۳) 1.7.2 (۲۱ مارس ۲۰۱۲ (۲۰۱۲-۰۳-۲۱)) ۹۲ New Event APIs: .on() and .off(), while the old APIs are still supported.
۱٫۸ ۹ اوت ۲۰۱۲ (۲۰۱۲-08-۰۹) 1.8.3 (۱۳ نوامبر ۲۰۱۲ (۲۰۱۲-۱۱-۱۳)) ۹۱٫۴ Sizzle Selector Engine rewritten, improved animations and $(html, props) flexibility.
۱٫۹ ۱۵ ژانویه ۲۰۱۳ (۲۰۱۳-01-۱۵) 1.9.1 (۴ فوریه ۲۰۱۳؛ ۱۱ سال پیش (۲۰۱۳-۰۴}})) ۹۰ Removal of deprecated interfaces and code cleanup
۱٫۱۰ ۲۴ مه ۲۰۱۳ (۲۰۱۳-05-۲۴) 1.10.2 (۳ ژوئیه ۲۰۱۳ (۲۰۱۳-۰۷-۰۳)) ۹۱ Incorporated bug fixes and differences reported from both the 1.9 and 2.0 beta cycles
۱٫۱۱ ۲۴ ژانویه ۲۰۱۴ (۲۰۱۴-01-۲۴) 1.11.3 (۲۸ آوریل ۲۰۱۵ (۲۰۱۵-۰۴-۲۸)) ۹۵٫۹
۱٫۱۲ ۸ ژانویه ۲۰۱۶ (۲۰۱۶-01-۰۸) 1.12.4 (۲۰ مه ۲۰۱۶ (۲۰۱۶-۰۵-۲۰)) ۹۵
۲٫۰ ۱۸ آوریل ۲۰۱۳ (۲۰۱۳-04-۱۸) 2.0.3 (۳ ژوئیه ۲۰۱۳ (۲۰۱۳-۰۷-۰۳)) ۸۱٫۱ Dropped IE 6–8 support for performance improvements and reduction in filesize
۲٫۱ ۲۴ ژانویه ۲۰۱۴ (۲۰۱۴-01-۲۴) 2.1.4 (۲۸ آوریل ۲۰۱۵ (۲۰۱۵-۰۴-۲۸)) ۸۲٫۴
۲٫۲ ۸ ژانویه ۲۰۱۶ (۲۰۱۶-01-۰۸) 2.2.4 (۲۰ مه ۲۰۱۶ (۲۰۱۶-۰۵-۲۰)) ۸۵٫۶
۳٫۰ ۹ ژوئن ۲۰۱۶ (۲۰۱۶-06-۰۹)[۶] 3.0.0 (۹ ژوئن ۲۰۱۶ (۲۰۱۶-0۶-۰۹)) ۸۶٫۳ Promises/A+ support for Deferreds, $.ajax and $.when, .data() HTML5-compatible
۳٫۱ ۷ ژوئیه ۲۰۱۶ (۲۰۱۶-07-۰۷) 3.1.1 (۲۳ سپتامبر ۲۰۱۶ (۲۰۱۶-0۹-۲۳)) ۸۶٫۳ jQuery.readyException added, ready handler errors are now not silenced
۳٫۲ ۱۷ مارس ۲۰۱۷ (۲۰۱۷-03-۱۷)[۷] 3.2.1 (۲۰ مارس ۲۰۱۷ (۲۰۱۷-0۳-۲۰)) ۸۴٫۶ Added support for retrieving contents of <template> elements, and deprecation of various old methods.
۳٫۳ ۱۹ ژانویه ۲۰۱۸ (۲۰۱۸-01-۱۹) 3.3.1 (۲۰ ژانویه ۲۰۱۸ (۲۰۱۸-0۱-۲۰)) ۸۴٫۸ Deprecation of old functions, functions that accept classes now also support them in array format.

جستارهای وابسته

ویرایش

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

ویرایش
  1. "jQuery: The write less, do more, JavaScript library". The jQuery Project. Retrieved 29 April 2010.
  2. "jQuery Usage Statistics". Archived from the original on 25 December 2018. Retrieved 21 May 2010.
  3. "Usage of javascript libraries for websites". Retrieved 7 May 2010.
  4. js.foundation، JS Foundation -. «License | jQuery Foundation». jquery.org (به انگلیسی). دریافت‌شده در ۲۰۱۸-۰۶-۱۱.
  5. "jQuery". Wikipedia (به انگلیسی). 2018-06-01.
  6. Chesters, James (2016-06-15). "Long-awaited jQuery 3.0 Brings Slim Build". infoq.com. Retrieved 2017-01-28.
  7. "jQuery 3.2.0 Is Out!". jQuery Blog. 16 March 2017. Retrieved 12 March 2018.