Регулятор уровня громкости с исопльзование слайдера jQuery UI
В данном уроке мы сделаем стильный элемент для регулировки уровня звука на основе слайдера из jQuery UI. Слайдер будет оформляться с помощью частей файла PSD со стилем для таких элементов.
Шаг 1. jQuery UI
Для работы нашего элемента требуется jQuery и jQuery UI. У нас есть два варианта для использования данных библиотек.
Первый - мы можем подключиться непосредственно к одному из следующих CDN: Google Ajax API CDN, Microsoft CDN и jQuery CDN. Такой вариант имеет массу преимуществ для реального проекта, но их обсуждение выходит за рамки нашего урока.
Второй, который будет использоваться в нашем уроке - сформировать и загрузить библиотеку jQuery UI непосредственно на официальной странице загрузки. Так как нам нужен только плагин Slider, выбираем только библиотеку Slider (с нужными модулями). В результате получится файл для загрузки, в котором будет отсутствовать лишнее. Затем присоединим библиотеки к нашему HTML документу (предпочтительно внизу страницы перед закрывающим тегом </body>). Такой вариант выбран нами по причине использования страницы в режиме оффлайн.
<script src="/js/jquery-1.7.2.min.js"></script> <script src="/js/jquery-ui-1.8.21.custom.min.js"></script>
Шаг 2. Разметка HTML
Разметка для слайдера очень простая. Все необходимы элементы - подсказка, слайдер и индикатор уровня - размещаются внутри тега section. А jQuery UI будет автоматически генерировать все остальное.
<section> <span class="tooltip"></span> <div id="slider"></div> <span class="volume"></span> </section>
Шаг 3. Устанавливаем слайдер
Ниже приведенный код устанавливает слайдер на странице. Но пока будет использоваться конфигурация по умолчанию.
$(function() {
$( "#slider" ).slider();
});
Нужно изменить конфигурацию слайдера для нашего маленького проекта.
Сначала сохраняем элемент слайдера как переменную.
var slider = $('#slider'),
Затем устанавливаем минимальное значение по умолчанию равным 35 (будет использоваться при первой загрузке).
slider.slider({
range: "min",
value: 35,
});
На данном шаге в браузере пока нечего смотреть, так как jQuery UI только генерирует разметку. Поэтому нужно установить стили для визуального представления слайдера.
Шаг 4. Стили
Прежде чем продолжить, нужно подготовить несколько текстур и иконок из прилагающихся PSD файлов.
На выше располагающемся рисунке представлены все изображения, которые потребуются для нашего проекта.
Начинаем с позиционирования слайдера в центре окна браузера и привязывания фона к элементу body.
body {
background: url('../images/bg.jpg') repeat top left;
}
section {
width: 150px;
height: auto;
margin: 100px auto 0;
position: relative;
}
Затем установим стили для подсказки, индикатора уровня, ручки управления и диапазона слайдера.
Слайдер
Так как мы не определяем максимальное значение для слайдера, то jQuery UI по умолчанию назначает его равным 100. Следовательно, мы можем использовать значение 100 px для ширины слайдера.
#slider{
border-width: 1px;
border-style: solid;
border-color: #333 #333 #777 #333;
border-radius: 25px;
width: 100px;
position: absolute;
height: 13px;
background-color: #8e8d8d;
background: url('../images/bg-track.png') repeat top left;
box-shadow: inset 0 1px 5px 0px rgba(0, 0, 0, .5),
0 1px 0 0px rgba(250, 250, 250, .5);
left: 20px;
}
Подсказка
Подсказка будет позиционироваться абсолютно сверху слайдера.
.tooltip {
position: absolute;
display: block;
top: -25px;
width: 35px;
height: 20px;
color: #fff;
text-align: center;
font: 10pt Tahoma, Arial, sans-serif ;
border-radius: 3px;
border: 1px solid #333;
box-shadow: 1px 1px 2px 0px rgba(0, 0, 0, .3);
box-sizing: border-box;
background: linear-gradient(top, rgba(69,72,77,0.5) 0%,rgba(0,0,0,0.5) 100%);
}
Индикатор уровня
Для нашего проекта будет формироваться визуальный эффект для индикации увеличения/ уменьшения громкости в зависимости от значения слайдера.
.volume {
display: inline-block;
width: 25px;
height: 25px;
right: -5px;
background: url('../images/volume.png') no-repeat 0 -50px;
position: absolute;
margin-top: -5px;
}
Ручка управления
Стиль ручки достаточно простой. Она будет иметь в качестве фона иконку в виде металлического кружка. Также будет изменяться внешний вид курсора мыши для информирования пользователя о возможностях слайдера.
.ui-slider-handle {
position: absolute;
z-index: 2;
width: 25px;
height: 25px;
cursor: pointer;
background: url('../images/handle.png') no-repeat 50% 50%;
font-weight: bold;
color: #1C94C4;
outline: none;
top: -7px;
margin-left: -12px;
}
Диапазон слайдера
Для использованного диапазона слайдера будет использоваться градиент:
.ui-slider-range {
background: linear-gradient(top, #ffffff 0%,#eaeaea 100%);
position: absolute;
border: 0;
top: 0;
height: 100%;
border-radius: 25px;
}
Шаг 5. Эффекты
А теперь поработаем сос специальными эффектами слайдера.
Подсказка
На данном этапе подсказка не содержит никакой информации. Мы планируем поместить в нее значение слайдера. Также положение подсказки по горизонтали будет соответствовать положению ручки.
Для начала сохраним элемент подсказки в переменную.
var tooltip = $('.tooltip');
Эффекты подсказки будут реализовываться в обработчике события slide.
slide: function(event, ui) {
var value = slider.slider('value'),
tooltip.css('left', value).text(ui.value);
Изначально подсказка будет скрыта:
А перед тем, как передвинуть ручку, будет выводиться подсказка с эффектом проявления:
start: function(event,ui) {
tooltip.fadeIn('fast');
},
При завершении движения ручки управления подсказка будет скрываться:
stop: function(event,ui) {
tooltip.fadeOut('fast');
},
Индикатор уровня громкости
Мы будем изменять иконку индикатора в соответствии со значением слайдера. Для реализации эффекта использется следующее условное выражение.
Элемент индикатора сохраняется в переменной:
Затем используем условное выражение.
Когда значение слайдера будет меньше 5, иконка выводится совсем без полосок. Затем, по мере увеличения значения будут добавляться полоски.
if(value <= 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({
range: "min",
min: 1,
value: 35,
start: function(event,ui) {
tooltip.fadeIn('fast');
},
slide: function(event, ui) {
var value = slider.slider('value'),
volume = $('.volume');
tooltip.css('left', value).text(ui.value);
if(value <= 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');
},
});
});
Готово
Источник: http://feedproxy.google.com/~r/ruseller/CdHX/~3/v2syqNPDFUM/lessons.php
|
В данном уроке мы сделаем стильный элемент для регулировки уровня звука на основе слайдера из jQuery UI. Слайдер будет оформляться с помощью частей файла PSD со стилем для таких элементов.Шаг 1. |
РэдЛайн, создание сайта, заказать сайт, разработка сайтов, реклама в Интернете, продвижение, маркетинговые исследования, дизайн студия, веб дизайн, раскрутка сайта, создать сайт компании, сделать сайт, создание сайтов, изготовление сайта, обслуживание сайтов, изготовление сайтов, заказать интернет сайт, создать сайт, изготовить сайт, разработка сайта, web студия, создание веб сайта, поддержка сайта, сайт на заказ, сопровождение сайта, дизайн сайта, сайт под ключ, заказ сайта, реклама сайта, хостинг, регистрация доменов, хабаровск, краснодар, москва, комсомольск |
Дайджест новых статей по интернет-маркетингу на ваш email
Новые статьи и публикации
- 2025-12-23 » API Яндекс Бизнеса: как подключить карточки компании к вашей CRM или ERP-системе
- 2025-12-23 » Как управлять всеми филиалами в Яндекс Картах из одной панели
- 2025-12-23 » От отзыва к продаже: система быстрого ответа и управления репутацией через интеграцию
- 2025-12-23 » Оформление карточки организации в Яндекс Бизнес = Продающее оформление вашей компании на Яндекс Картах
- 2025-12-23 » Из чего складывается стоимость логотипа: разбираем по полочкам
- 2025-12-23 » Как провести ребрендинг логотипа, не потеряв старых клиентов
- 2025-12-23 » Логотип vs. Иконка: Что на самом деле нужно вашему бизнесу?
- 2025-12-23 » Трейд-маркетинг: как продвигать товары в точках продаж
- 2025-12-23 » Подписная модель: стратегия, риски и эффективность
- 2025-12-23 » Чёрный список почтовых серверов: как защитить рассылки от блокировки
- 2025-12-23 » Закон о рекомендательных технологиях: как использовать их легально
- 2025-12-23 » Как управлять жизненным циклом продукта: от запуска до спада
- 2025-12-17 » Почему медленный госсайт — это провал и как это исправить
- 2025-12-17 » Как соответствовать требованиям 152-ФЗ и 210-ФЗ при разработке государственных сайтов
- 2025-12-17 » Интеграция госсайта с внешними системами: от визитки к цифровому сервису
- 2025-12-17 » Введение: Ненужные страницы в индексе — это тихий слив бюджета и позиций
- 2025-12-17 » Продвинутая работа с анкорным профилем: баланс, многоуровневая стратегия и защита от спама
- 2025-12-17 » >Как удержать и повысить продажи после праздников
- 2025-12-17 » Почему сегодня офлайн-данные и SEO — это единая система
- 2025-12-17 » Надёжная доставка кодов входа: каскадная логика, которая защищает конверсию
- 2025-12-11 » Будущее SEO в эпоху ИИ: тренды 2024-2025 и стратегии адаптации
- 2025-12-11 » Техническое SEO 2025: Фундаментальное руководство по созданию безупречного цифрового актива
- 2025-12-11 » 10 устаревших SEO-ошибок, которые мешают росту в 2026 году + чек-лист для срочной проверки сайта
- 2025-12-11 » Навигация типа «хлебные крошки»: современный подход к удобству сайта
- 2025-12-11 » Оптимизация сайтов: как микроразметка Schema.org влияет на видимость и привлечение клиентов
- 2025-12-11 » Вирусы на сайте: как обнаружить, обезвредить и предотвратить угрозу
- 2025-12-11 » Generative Engine Optimization (GEO): как работать с новым типом поиска
- 2025-12-02 » Когда ошибка молчит: как бессмысленные сообщения ломают пользовательский опыт
- 2025-12-02 » 9 лучших бесплатных фотостоков
- 2025-12-02 » UTM-метки: ключевой инструмент аналитики для маркетолога
Надобно иметь большое мужество, чтоб высказать громко вещи, потихоньку известные каждому. А. Герцен |
Мы создаем сайты, которые работают! Профессионально обслуживаем и продвигаем их , а также по всей России и ближнему зарубежью с 2006 года!
Как мы работаем
Заявка
Позвоните или оставьте заявку на сайте.
Консультация
Обсуждаем что именно Вам нужно и помогаем определить как это лучше сделать!
Договор
Заключаем договор на оказание услуг, в котором прописаны условия и обязанности обеих сторон.
Выполнение работ
Непосредственно оказание требующихся услуг и работ по вашему заданию.
Поддержка
Сдача выполненых работ, последующие корректировки и поддержка при необходимости.


Мы создаем практически любые сайты от продающих страниц до сложных, высоконагруженных и нестандартных веб приложений! Наши сайты это надежные маркетинговые инструменты для успеха Вашего бизнеса и увеличения вашей прибыли! Мы делаем красивые и максимально эффектные сайты по доступным ценам уже много лет!
Комплексный подход это не просто продвижение сайта, это целый комплекс мероприятий, который определяется целями и задачами поставленными перед сайтом и организацией, которая за этим стоит. Время однобоких методов в продвижении сайтов уже прошло, конкуренция слишком высока, чтобы была возможность расслабиться и получать \ удерживать клиентов из Интернета, просто сделав сайт и не занимаясь им...
Мы оказываем полный комплекс услуг по сопровождению сайта: информационному и техническому обслуживанию и развитию Интернет сайтов.
Контекстная реклама - это эффективный инструмент в интернет маркетинге, целью которого является увеличение продаж. Главный плюс контекстной рекламы заключается в том, что она работает избирательно.