جی‌کوئری

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

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

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

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

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

  • دسترسی به عناصر موجود در پرونده و تغییر در آنها.
  • کنترل آسان و قدرتمند تر رویدادها (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([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-۰۳) New Event APIs: .on() and .off(), while the old APIs are still supported.
۱٫۸ ۹ اوت ۲۰۱۲ (۲۰۱۲-08-۰۹) ۹۱٫۴ Sizzle Selector Engine rewritten, improved animations and $(html, props) flexibility.
۱٫۹ ۱۵ ژانویه ۲۰۱۳ (۲۰۱۳-01-۱۵) 1.9.1 (۴ فوریه، ۲۰۱۳؛ ۲ سال پیش (۲۰۱۳-۰۲-04))[۶] Removal of deprecated interfaces and code cleanup
۱٫۱۰ ۲۴ مه ۲۰۱۳ (۲۰۱۳-05-۲۴) 1.10.2 (۳ ژوئیه ۲۰۱۳ (۲۰۱۳-07-۰۳)) Incorporated bug fixes and differences reported from both the 1.9 and 2.0 beta cycles
۱٫۱۱ ۲۴ ژانویه ۲۰۱۴ (۲۰۱۴-01-۲۴) 1.11.1 (۱ مه ۲۰۱۴ (۲۰۱۴-05-۰۱)) ۹۳٫۵
۲٫۰ ۱۸ آوریل ۲۰۱۳ (۲۰۱۳-04-۱۸) 2.0.3 (۳ ژوئیه ۲۰۱۳ (۲۰۱۳-07-۰۳)) ۸۱٫۱ Dropped IE 6–8 support for performance improvements and reduction in filesize
۲٫۱ ۲۴ ژانویه ۲۰۱۴ (۲۰۱۴-01-۲۴) 2.1.1 (۱ مه ۲۰۱۴ (۲۰۱۴-05-۰۱)) ۸۲٫۲

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

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