Головна » Кодування » Створення регулятора гучності за допомогою повзунка jQuery UI

    Створення регулятора гучності за допомогою повзунка jQuery UI

    Якщо ви - мисливець за халяви, швидше за все, ви завантажили багато користувальницьких інтерфейсів PSD (UI). Деякі з них дійсно дивують і можуть заощадити наш час шляхом створення прототипів дизайну, над яким ми працювали.

    У цьому пості ми кодуємо PSD UI і перетворюємо його в щось більш функціональне. Ми будемо кодувати наступний слайдер PSD UI, який буде застосований як тему JQuery UI Slider.

    Однак, будь ласка занотуй для цього навчального посібника проміжні рівні досвіду. Сказавши, що це, все одно відносно легко слідувати, якщо ви досить добре знайомі з CSS і jQuery.

    Гаразд, тепер давайте почнемо.

    Крок 1: інтерфейс jQuery

    Ми, очевидно, потребуємо jQuery та бібліотеку інтерфейсу jQuery, і ми маємо два варіанти їх використання. По-перше, ми можемо зв'язати JQuery і JQuery UI безпосередньо з наступних CDN: Google Ajax API CDN, Microsoft CDN і JQuery CDN, є багато переваг використання розміщеного файлу CDN, коли ми розміщуємо наш сайт в режимі онлайн.

    Але оскільки ми будемо працювати над цим лише в автономному режимі, ми будемо використовувати другий замість цього.

    Ми завантажимо та налаштуємо бібліотеку інтерфейсу jQuery на офіційній сторінці завантаження. Оскільки нам потрібен лише плагін Slider, ми виберемо лише бібліотеку Slider разом із залежностями та залишимо інші. Таким чином, файли, які ми використовуємо, будуть набагато тонкішими і завантажуватимуться швидше. Після цього з'єднайте всі ці бібліотеки з документом HTML, бажано внизу сторінки або перед закриттям , щоб бути точним.

       

    Крок 2: розмітка HTML

    Розмітка для слайдера дуже проста, ми перенесли всю необхідну розмітку - підказку, повзунок і обсяг - всередині HTML5 розділ . Після цього інтерфейс jQuery автоматично генерує решту.

     

    Крок 3. Встановіть інтерфейс Slider

    Фрагмент нижче встановить повзунок на сторінці, але застосовується лише типова конфігурація.

     $ (function () $ ("#slider")) .slider ();); 

    Отже, ми трохи збільшимо слайдер, додавши інші конфігурації.

    По-перше, зберігаємо елемент повзунка як змінну.

     var slider = $ ('# slider'), 

    Потім ми встановлюємо мінімальне значення слайдера за замовчуванням 35, коли він спочатку завантажується.

     slider.slider (range: "min", значення: 35,); 

    На даний момент ми ще не побачимо нічого в браузері, оскільки інтерфейс jQuery є в основному тільки генерування розмітки. Отже, нам потрібно застосувати деякі стилі, щоб побачити результат візуально в браузері.

    Крок 4: Стилі

    Перш ніж продовжити, нам потрібні активи з вихідного файлу PSD, такі як фонова текстура та піктограма.

    Ми не будемо говорити про це як нарізати У цій статті ми зупинимося лише на коді. Якщо ви не впевнені, як зробити фрагмент, спочатку перегляньте наступну скриншот перед тим, як продовжити.

    • Перетворення дизайну з PSD на HTML - Nettuts+

    Гаразд, тепер почнемо додавати стилі.

    Ми почнемо, розмістивши повзунок у центрі вікна веб-переглядача, і додамо фон, який ми розрізали з PSD, до тіла.

     body background: url ('… /images/bg.jpg') повторіть ліворуч;  секція ширина: 150px; висота: авто; маржа: 100px auto 0; позиція: відносна;  

    Далі ми застосуємо стилі для підказки, обсяг, ручкою, повзунка діапазон і повзунок себе.

    Ми зробимо цю частину за частиною, починаючи з ...

    Повзунок

    Оскільки ми не визначили максимальне значення для самого повзунка, інтерфейс jQuery застосує стандартне значення; це 100. Тому ми також можемо подати заявку 100 (px) для повзунка ширина.

     #slider border-width: 1px; стиль кордону: твердий; border-color: # 333 # 333 # 777 # 333; кордон-радіус: 25px; ширина: 100px; позиція: абсолютна; висота: 13px; background-color: # 8e8d8d; background: url ('… /images/bg-track.png') повторює ліворуч; box-shadow: вставка 0 1px 5px 0px rgba (0, 0, 0, .5), 0 1px 0 0px rgba (250, 250, 250, .5); ліворуч: 20px;  

    Підказка

    Підказка буде розташована над повзунком, вказавши її позиція абсолютно с -25px за її верхня позиція.

     .tooltip position: absolute; дисплей: блок; зверху: -25px; ширина: 35px; висота: 20px; колір: #fff; text-align: center; шрифт: 10pt Tahoma, Arial, sans-serif; радіус кордону: 3px; кордон: 1px твердий # 333; box-shadow: 1px 1px 2px 0px rgba (0, 0, 0, .3); розмір коробки: кордон; фон: лінійний градієнт (верхній, rgba (69,72,77,0.5) 0%, rgba (0,0,0,0,5) 100%);  

    Обсяг

    Ми трохи змінили піктограму гучності, щоб відповідати нашій ідеї. Ідея полягає в тому, що ми збираємося створити ефект поступово підніміть панель гучності відповідно до значення повзунка. Я впевнений, що ви часто бачили такий ефект у інтерфейсі користувача медіаплеєра.

     .обсяг дисплей: вбудований блок; ширина: 25px; висота: 25px; праворуч: -5px; background: url ('… /images/volume.png') без повтору 0 -50px; позиція: абсолютна; margin-top: -5px;  

    Ручка UI

    Стиль ручки досить простий; вона матиме іконку, що виглядає як металевий круг, нарізаний з PSD, і прикріплений як фон.

    Ми також змінюємо режим курсору на покажчик, тому користувач помітить, що цей елемент перетягується.

     .ui-slider-handle позиція: абсолютна; z-індекс: 2; ширина: 25px; висота: 25px; курсор: покажчик; background: url ('… /images/handle.png') не повторюється 50% 50%; font-weight: bold; колір: # 1C94C4; контур: немає; зверху: -7px; margin-left: -12px;  

    Діапазон повзунків

    Колір повзунка матиме трохи білий колір градієнта.

     .ui-slider-range фон: лінійний градієнт (top, #ffffff 0%, # eaeaea 100%); позиція: абсолютна; кордон: 0; зверху: 0; висота: 100%; кордон-радіус: 25px;  

    Крок 5: Ефект

    На цьому кроці ми почнемо працювати над спеціальним ефектом Slider.

    Підказка

    На цьому етапі підказку поки немає, тому ми збираємося заповнити її значенням повзунка. Також горизонтальне положення підказки буде відповідати положенню ручки.

    Перш за все, ми зберігаємо елемент підказки як змінну.

     var tooltip = $ ('. tooltip'); 

    Потім ми визначаємо ефект підказки, про який ми згадували вище в Події.

     слайд: функція (подія, ui) var value = slider.slider ('value'), tooltip.css ('left', value) .text (ui.value); 

    Але ми також хочемо, щоб підказка була спочатку прихованою.

     tooltip.hide (); 

    Після цього, коли ручкою збирається розпочати ковзання, він буде показаний з ефектом вмирання.

     start: function (event, ui) tooltip.fadeIn ('швидкий'); , 

    І, коли користувач припиняє ковзання ручки, підказка буде зникати і бути прихованою.

     stop: function (event, ui) tooltip.fadeOut ('швидкий'); , 

    Обсяг

    Як ми вже згадували вище Розділ Стилі, ми плануємо змінювати піктограму гучності відповідно до позиції ручки або, якщо бути точним, значення повзунка. Таким чином, ми будемо застосовувати наступний умовний оператор для створення цього ефекту.

    Але, по-перше, ми зберігаємо елемент обсягу, а також значення повзунка як змінну.

     volume = $ ('. volume'); 

    Потім починається умовна операція.

    Коли значення повзунка нижче або дорівнює 5 значок гучності взагалі не матиме жодних смужок, що вказує на те, що гучність дуже низька, але коли значення повзунка зростає, панель гучності також збільшиться.

     if (значення <= 5)  volume.css('background-position', '0 0');  else if (value <= 25)  volume.css('background-position', '0 -25px');  else if (value <= 75)  volume.css('background-position', '0 -50px');  else  volume.css('background-position', '0 -75px'); ; 

    Помістіть їх разом

    Гаразд, у випадку, якщо ви переплутаєтеся з усім вищезазначеним, не будьте. Ось ярлик. Вставте всі наступні коди у документ.

     $ (function () var slider = $ ('# slider'), tooltip = $ ('. tooltip'); tooltip.hide (); slider.slider (діапазон: "min", min: 1, значення: 35, start: function (event, ui) tooltip.fadeIn ('швидкий');, слайд: функція (подія, ui) var value = slider.slider ('value'), volume = $ ('. Volume tooltip.css ('left', value) .text (ui.value); if (значення <= 5)  volume.css('background-position', '0 0');  else if (value <= 25)  volume.css('background-position', '0 -25px');  else if (value <= 75)  volume.css('background-position', '0 -50px');  else  volume.css('background-position', '0 -75px'); ; , stop: function(event,ui)  tooltip.fadeOut('fast'); , ); ); 

    Гаразд, давайте тепер переглянемо результат у браузері.

    • Демо
    • Завантажити джерело

    Висновок

    Сьогодні ми успішно створили більш елегантну тему інтерфейсу jQuery, але в той же час ми успішно переклали користувальницький інтерфейс PSD у функціональний регулятор гучності..

    Ми сподіваємося, що цей підручник надихне вас і допоможе вам зрозуміти, як перетворити PSD на більш корисний продукт.

    Нарешті, якщо у Вас виникли питання щодо цього підручника, не забудьте додати його в розділі коментарів нижче.