جی‌کوئری UI یا هرآنچه برای طراحی یک اپلیکیشن نیاز دارید

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

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

یک شروع ساده

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

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

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

درگ‌کردن [+]

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

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

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

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

$(function() {
	$(".draggable").draggable();
});

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

دیدگاه‌ها (۲۱)

  • سلام
    عالی بود علیرضا
    ممنون

    پاسخ

  • سلام
    ممنون از مطلبتون
    اما نمونه ای که خودتون ساختید تویه مرورگره اپرا کار نمی کنه. در حالی که نمونه اصلی خودشون تویه اپرا هم کار میکنه.

    موفق باشید

    پاسخ

    اُپرا با دایرکشن راست به چپ مشکلات زیادی داره.

    پاسخ

  • مثل همیشه عالی و مفید.
    استایل جدید هم مبارکه.

    پاسخ

  • عالی بود مرد

    پاسخ

  • عالی جامع و کامل بود.

    پاسخ

  • مرسی و ممنون
    تند و تند خوندم ولی صفحه رو ذخیره میکنم تا کامل بخونم
    همینجوری ادامه بده

    پاسخ

  • سلام. خیلی جالب بود. این قالب جدید هم خیلی باحاله!!!
    یه خورده دیر به دیر پست میذارین!
    این جی کوئری هم هرچی ازش بذارین کمه!!!
    از آموزشات ممنون :)

    پاسخ

  • سلام ، کد نویسیتون معرکه هست !

    موفق و پیروز باشید ! عالیه آموزش هاتون :) :D

    پاسخ

  • سلام دوست عزیز . وبلاگ تو را همیشه دیده ام و خواهم دید .

    یک سوالی مدتهاست که فکر مرا به خود مشغول کرده !

    تو از CSS3 توی قالب استفاده کردی ! اما توی اینترنت اکسپلور به طور مستقیم این امکان وجود نداره .

    همچنین من دارم روی یک کد انیمیشن جی کوئری کار میکنم ، ولی چون تازه کار هستم ، به مشکل برخوردم .

    راستی علی جان ، سرت رو درد نیارم … (لبخند)

    پاسخ

  • بسیار عالی بود هم مطلب هم موضوع . اما یک نکته ای هست که در یک اپلیکیشن واقعی باید این ابزار ها بهدی دست باز باشند که سفارشی شوند. متاسفانه در یک سری موارد این ابزار ها با کاربر وب فارسی مشکلاتی دارند. و باید دست برد وسط کد ها. اینجاست که مشکل ایجاد میشه برای بعدها

    پاسخ

  • عالی بود

    پاسخ

  • سلام
    بسیار عالی بود … یه مقاله هم درباره این نمایش عکس با اسکرول کردن که بلاگ خودت هم داره کار کن … فیض ببریم :)

    پاسخ

  • دستت درست خیلی عالی بود
    راستی قالب جدید هم مبارک خیلی هوشمندانه طراحی شده نشون می ده که هنوز یه سر و گردن از بقیه بالاتری

    پاسخ

  • سلام

    دستت درد نکنه

    ایشاالله دسد برسد به ضریح

    عزیزم قالبتو عوض کردی مبارکه

    مراحل طراحیتو ثبت میکردی که شمام به ما بگی مبارکه

    و الباقی . . .

    پاسخ

  • آقا سلام خسته نباشی روزنامه عصر ارتباط شماره ۳۵۷ رو خواندی ؟
    در بخش نرم افزارهاش سایت شما در سومین دوره جشنواره وب سایت های ایرانی در بخش برنامه نویسی انتخاب شده .
    تبریک می گم

    پاسخ

    بله دیدم. ممنون رفیق :)

    پاسخ

  • عالی عالی… بسیار عالی

    پاسخ

  • ای کاش در مورد این سایت هم و نوع افکت های آن یک مطلب مینوشتی.
    که فکر کنم برای محسن داوری است….البته بعضی از فانشن ها!

    پاسخ

    http://xdic.ir/

    پاسخ

  • در کل سایت مثل خودت فوق العاده است. چون یک انسان فوق العاده می تونه همچین وب سایت را جهت کمک کردن به بقیه را ه اندازی کنه.

    پاسخ

دیدگاه خود را ارسال کنید


می‌توانید از برخی کدهای HTML استفاده نمایید:


<a> <b> <blockquote> <i> <em> <pre> <code> <strong>