تاريخ : چهارشنبه 12 مهر 1391  | 1:52 AM | نويسنده : Mohammad ali Hajian

درباره‌ی جی‌کوئری پیش‌تر صحبت کرده‌ایم. کتاب‌خانه‌ی جاوااسکریپتی که کار را برای‌مان چندین‌برابر راحت کرده است و به سادگی می‌توان کارهای بزرگی را در کم‌تر از چند دقیقه پیاده نمود. نمی‌خواهم از جی‌کوئری بگویم که می‌دانم کم و بیش با آن آشنایید.

درباره‌ی جی‌کوئری پیش‌تر صحبت کرده‌ایم. کتاب‌خانه‌ی جاوااسکریپتی که کار را برای‌مان چندین‌برابر راحت کرده است و به سادگی می‌توان کارهای بزرگی را در کم‌تر از چند دقیقه پیاده نمود. نمی‌خواهم از جی‌کوئری بگویم که می‌دانم کم و بیش با آن آشنایید.

 

چیزی که قصد دارم درباره‌ش صحبت کنم، جی‌کوئری UI (مخفف User Interface) هست که یک کتاب‌خانه‌ی تحت جی‌کوئری‌ست و روی بخش رابط کاربری فکوس دارد. به‌طوری که عمل‌هایی مانند درگ‌کردن یک المنت در صفحه یا تغییر اندازه‌ی آن با کشیدن ماوس و یا بزرگ‌نمایی یک عکس با بالا پایین کردن یک نوار لغزنده و خیلی کارهای دیگر را تا حدی ساده کرده است که شاید کمی دور از ذهن باشد.

یک شروع ساده

ابتدا باید کتاب‌خانه‌ی جی‌کوئری UI را از اینجا دریافت کنید. نکته‌ی جالب این است که هنگام دریافت می‌توانید پکیج دلخواه خودتان را ایجاد و دریافت کنید. در صفحه‌ی دریافت لیستی از کامپوننت‌های جی‌کوئری UI قرار دارد که با برداشتن تیک ِ چک‌باکس ِ هرکدام، آن کامپوننت از پکیج‌تان حذف می‌شود. این مورد برای زمانی که حجم کد برای‌مان اهمیت زیادی دارد بسیار مناسب است و می‌شود کامپوننت‌های اضافی را حذف نمود.

پس از دریافت، کافی است سری به بخش دموها بزنید. این بخش به‌عنوان یک مرجع جمع‌و‌جور و کامل، نمونه‌های زیادی از کارهایی که می‌شود با جی‌کوئری UI انجام داد را به همراه توضیحاتی برای‌تان قرار داده است.

اما بهتر است برای درک بهتر ماجرا، یکی از نمونه‌ها را با هم مرور کنیم؛

درگ‌کردن [+]

- یادتان باشد که کتاب‌خانه‌ی جی‌کوئری و جی‌کوئری UI را به صفحه اضافه کنید (هردو کتاب‌خانه در پکیجی که دریافت می‌کنید، در فولدر js قرار دارند).

دستور اچ‌تی‌ام‌ال زیر را داریم:

1 <div class="draggable">Drag me!</div>

حالا کافی است اسکریپت زیر را اضافه کنیم:

1 $(function() {
2     $(".draggable").draggable();
3 });

همه‌چیز به همین ساده‌گی است؛ هر المنتی که در صفحه، کلاس draggable داشته باشد، توسط اسکریپت بالا، دارای خاصیت درگ‌شدن می‌شود.
حالا می‌توانیم آپشن‌هایی را به آن اضافه کنیم تا کاربردی‌تر شود. مثلاً هنگام درگ‌کردن، المنت موردنظر کمی شفاف شود:

1 $(function() {
2     $(".draggable").draggable({ opacity: 0.50 });
3 });

می‌توانیم از چند آپشن هم‌زمان استفاده کنیم، با گذاشتن یک , بین آپشن‌ها:

1 $(function() {
2     $(".draggable").draggable({ opacity: 0.50, revert: true });
3 });

آپشن revert اگر مقدارش true باشد باعث می‌شود المنت را وقتی درگ می‌کنید به سمتی، پس از رها کردن، برگردد سر جای اولش. مقدار پیش‌فرض آن false است.

اما از این قسمت که بگذریم می‌رسیم به یک مورد مهم دیگر از جی‌کوئری UI و آن این است که این کتاب‌خانه، علاوه بر دارا بودن پلاگین‌های قدرتمند جی‌کوئری، یک فریم‌ورک سی‌اس‌اس هماهنگ با این پلاگین‌ها نیز به‌همراه دارد و با استفاده از آن می‌شود به پلاگین‌ها استایل داد. استایل‌ها و پوسته‌های متعدد ِ آماده‌ای که باعث می‌شوند در بیشتر مواقع کار به طراحی استایل توسط خودمان نرسد.

برای استفاده از این فریم‌ورک سی‌اس‌اس کافی است فایل سی‌اس‌اسی که نامش یک همچین‌چیزی است: jquery-ui-1.8.4.custom.css و در مسیر css/smoothness قرار دارد را به صفحه‌مان اضافه کنیم.

البته به‌همراه پکیجی که در ابتدا دریافت می‌کنید فقط همین یک استایل وجود دارد و اگر می‌خواهید استایل‌های دیگر را هم ببینید، بروید اینجا و هرکدام را که خواستید دریافت کنید و یا قبل از دریافت می توانید تغییراتی که می‌خواهید را به آن اعمال نمایید و بعد دریافتش کنید.

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

در فریم‌ورک UI نام همه‌ی کلاس‌ها با .ui آغاز می‌گردد. مثلاً: .ui-widget یا .ui-widget-content

کمی بالاتر مثالی برای درگ‌کردن ِ یک المنت زدم. حالا می‌خواهم آن المنت را با فریم‌ورک سی‌اس‌اس جی‌کوئری UI استایل‌دهی کنم؛

1 <div class="draggable ui-widget">
2 <div class="ui-widget-header">Title</div>
3 <p class="ui-widget-content">Content...</p>
4 </div>

درواقع .ui-widget المنت اصلی‌ای است که درگ می‌شود. در داخلش .ui-widget-header آوردم و عنوانی در آن نوشتم و بعد از آن هم .ui-widget-content برای قراردادن محتوا در آن.

لُپ ِ کلام اینکه جی‌کوئری UI زمینه‌ها را برای‌مان آماده می‌کند تا ما حواس و تمرکزمان روی هدفی که داریم باشد.

نمونه‌ای از مثال‌هایی که زده شد را اینجا ببینید.

aliha.ir/2010/09/06/jquery-ui/

 







نظرات 0