Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Разработка мобильных приложений для бизнеса. Учебное пособие

.pdf
Скачиваний:
0
Добавлен:
08.09.2026
Размер:
2 Мб
Скачать
☆
toTimeString Возвращает строковое представление времени (строка содержит
только время). toDateString Возвращает строковое представление даты (строка содержит
только дату).
toLocaleTimeString Аналог toTimeString, но возвращает строковое представление
времени, отформатированное в соответствии с настройками ло-
кализации пользователя. toLocaleDateString Аналог toDateString, но возвращает строковое представление да-
ты, отформатированное в соответствии с настройками локализа-
ции пользователя.
Дополнительные функции
getTimezoneOffset Возвращает смещение локального времени на компьютере поль-
зователя относительно времени UTC. Смещение возвращается в
минутах. parse Функция позволяет проверить корректность даты и времени, за-
писанных в виде строки. Если строка корректна – будет создан
объект Date.
Также объект Date содержит ряд методов для работы с UTC-датами. Эти функции полностью аналогичны уже рассмотренным, но содержат в имени префикс «UTC» и работают только с «универсальным» временем: getUTCSeconds, setUTCFullYear и т.д.
Рассмотрим пример работы с датами:
var tmp = new Date(now.getTime());
var arrNames = new Array('Сегодня', 'Завтра', 'Через 1 год 6 месяцев 15 дней');
var arrNormal = new Array();
var arrLocal = new Array();
var arrUTC = new Array();
// сейчас
arrLocal[0] = tmp.toLocaleString();
arrNormal[0] = tmp.toString();
arrUTC[0] = tmp.toUTCString();
// завтра
tmp.setDate(tmp.getDate() + 1);
arrLocal[1] = tmp.toLocaleString();
arrNormal[1] = tmp.toString();
arrUTC[1] = tmp.toUTCString();
// через 1 год 6 месяцев 15 дней
tmp.setFullYear(tmp.getFullYear() + 1);
tmp.setMonth(tmp.getMonth() + 6);
tmp.setDate(tmp.getDate() + 15);
31
arrLocal[2] = tmp.toLocaleString();
arrNormal[2] = tmp.toString();
arrUTC[2] = tmp.toUTCString();
// выводим результаты в таблицу
document.write('<table border="0"><tr>'
+ '<td>Дата</td>'
+ '<td>Локализованная</td>'
+ '<td>Не локализованная</td>'
+ '<td>UTC</td></tr>');
for (i = 0; i < 3; i++)
{
document.write('<tr>'
+ '<td>' + arrNames[i] + '</td>
+ '<td>' + arrLocal[i] + '</td>
+ '<td>' + arrNormal[i] + '</td>
+ '<td>' + arrUTC[i] + '</td>
+ '</tr>');
}
document.write('</table>');
Введение в jQuery
jQuery – библиотека JavaScript, фокусирующаяся на взаимодействии JavaScript и HTML. Библиотека jQuery помогает легко получать доступ к
любому элементу DOM, обращаться к атрибутам и содержимому элемен­тов DOM, манипулировать ими. Также библиотека jQuery предоставляет удобный API по работе с AJAX.
Возможности
Движок кроссбраузерных CSS-селекторов Sizzle, выделившийся в отдельный проект.
Переход по дереву DOM, включая поддержку XPath как плагина.
События.
Визуальные эффекты.
AJAX-дополнения.
JavaScript-плагины.
32
Философия
Точно так же, как CSS отделяет визуализацию от структуры HTML, JQuery отделяет поведение от структуры HTML. Например, вместо прямо­го указания на обработчик события нажатия кнопки управление передаётся JQuery идентифицирующей кнопки и затем преобразовывающий его в об-
работчик события клика. Такое разделение поведения и структуры также называется принципом ненавязчивого JavaScript.
Библиотека jQuery содержит функциональность, полезную для
мак­симально широкого круга задач. Тем не менее, разработчиками библиоте­ки не ставилась задача совмещения в jQuery функций, которые подошли бы всюду, поскольку это привело бы к большому коду, большая часть ко­торого не востребована. Поэтому была реализована архитектура компакт­ного универсального ядра библиотеки и плагинов. Это позволяет собрать для ресурса
именно ту JavaScript-функциональность, которая на нём была
бы востребована.
Использование
jQuery, как правило, включается в веб-страницу как один внешний
JavaScript-файл:
<head> <script type="text/javascript" src="путь/к/jQuery.js"> </script> </head>
Вся работа с jQuery ведётся с помощью функции $. Если на сайте применяются другие JavaScript библиотеки, где $ может использоваться для своих нужд, то можно использовать её синоним – jQuery. Второй спо­соб считается более правильным, а чтобы код не получался слишком гро­моздким, можно писать его следующим образом:
jQuery(function($) {
// здесь код скрипта, где в $ будет находиться объект, предостав- ляющий доступ к функциям jQuery
})
Работу с jQuery можно разделить на 2 типа:
Получение jQuery-объекта с помощью функции $(). Например, пе- редав в неё CSS-селектор, можно получить jQuery-объект всех элементов HTML, попадающих под критерий и далее работать с ними с помощью различных методов jQuery-объекта. В случае, если метод не должен воз­вращать какого-либо значения, он возвращает ссылку
на jQuery объект, что позволяет вести цепочку вызовов методов согласно концепции текучего интерфейса.
Вызов глобальных методов у объекта $, например, удобных итера-
торов по массиву.
33
Типичный пример манипуляции сразу несколькими узлами DOM заключается в вызове $ функции со строкой селектора CSS, что возвраща­ет объект jQuery, содержащий некоторое количество элементов HTML-страницы. Эти элементы затем обрабатываются методами jQuery. Например,
$("div.test").add("p.quote").addClass("blue").slideDown("slow");
находит все элементы div с классом test, а также все элементы p с классом quote, и затем добавляет им всем класс blue и визуально плавно спускает вниз. Здесь методы add, addClass и slideDown возвращают ссылку на исходный объект $("div.test"), поэтому возможно вести такую цепочку.
Методы, начинающиеся с $., удобно применять для обработки гло­бальных объектов. Например:
$.each([1,2,3], function() {
document.write(this + 1);
});
добавит на страницу текст 234.
$.ajax и соответствующие функции позволяют использовать методы
AJAX. Например:
$.ajax({
type: "POST",
url: "some.php",
data: {name: 'John', location: 'Boston'},
success: function(msg){
alert( "Data Saved: " + msg );
}
});
В этом примере идет обращение к скрипту some.php с параметрами name=John&location=Boston, и полученный результат выдается в сообще-
нии посредством alert().
Пример добавления к элементу обработчика события click с помо­щью jQuery:
jQuery(function($) {
$("a").click(function() {
alert("Hello world!");
});
});
В данном случае при нажатии на элемент <A> происходит вызов alert("Hello world!").
События
Практически все команды jQuery, реагирующие на события, возвра­щают jQuery. Если результат выполнения отличается, это будет оговорено отдельно.
34
Загрузка страницы:
ready(функция)
Добавляет функцию, выполняющуюся всякий раз, когда объектная модель документа (DOM) готова к использованию.
Управление событиями:
bind(тип, данные, функция)
Назначает обработчик к одному или более событиям (например, click) для каждого совпавшего элемента. Можно связывать также и поль­зовательские события.
one(тип, данные, данные)
Назначает обработчик одному или более событиям для каждого сов­павшего элемента, который выполняется единожды.
trigger(событие, данные)
Вызывает событие для каждого элемента набора.
triggerHandler(событие, данные)
Возвращает Object. Вызывает все связанные с элементом обработчи­ки (для указанного типа события) без выполнения действия браузера по умолчанию, передачи события или «живых» событий.
unbind(тип, функция)
Действие этой функции противоположно функции bind: удаляет при­вязанные события из каждого элемента набора.
«Живые» события:
live(тип, функция)
Привязывает обработчик к событию (например, click) для всех теку­щих и будущих элементов набора. Может также связывать пользователь­ские события.
die(тип, функция)
Действие данной функции противоположно методу live – удаляет привязанные «живые» события.
Взаимодействие:
hover(over, out)
Имитирует эффект hovering (отслеживание попадания указателя мыши в пределы объекта).
toggle(fn, fn2, fn3, fn4, ...)
Переключается между двумя или более функциями, вызывающимися поочередно каждым следующим нажатием ЛКМ.
События:
blur()
Вызывает событие blur для каждого элемента набора.
blur(функция)
Назначает функцию к событию blur для каждого элемента набора.
change()
Вызывает событие change для каждого элемента набора.
35
change(функция)
Назначает функцию к событию change для каждого элемента набора.
click()
Вызывает событие click для каждого элемента набора.
click(функция)
Назначает функцию к событию click для каждого элемента набора.
dblclick()
Вызывает событие dblclick для каждого элемента набора.
dblclick(функция)
Назначает функцию к событию dblclick для каждого элемента набора.
error()
Вызывает событие error для каждого элемента набора.
error(функция)
Назначает функцию к событию error для каждого элемента набора.
focus()
Вызывает событие focus для каждого элемента набора.
focus(функция)
Назначает функцию к событию focus для каждого элемента набора.
keydown()
Вызывает событие keydown для каждого элемента набора.
keydown(функция)
Назначает функцию к событию keydown для каждого элемента набора.
keypress()
Вызывает событие keypress для каждого элемента набора.
keypress(функция)
Назначает функцию к событию keypress для каждого элемента набора.
keyup()
Вызывает событие keyup для каждого элемента набора.
keyup(функция)
Назначает функцию к событию keyup для каждого элемента набора.
load(функция)
Назначает функцию к событию load для каждого элемента набора.
mousedown(функция)
Назначает функцию к событию mousedown для каждого элемента набора.
mouseenter(функция)
Назначает функцию к событию mouseenter для каждого элемента набора.
mouseleave(функция)
Назначает функцию к событию mouseleave для каждого элемента набора.
mousemove(функция)
36
Назначает функцию к событию mousemove для каждого элемента набора.
mouseout(функция)
Назначает функцию к событию mouseout для каждого элемента набора.
mouseover(функция)
Назначает функцию к событию mouseover для каждого элемента набора.
mouseup(функция)
Назначает функцию к событию mouseup для каждого элемента набора.
resize(функция)
Назначает функцию к событию resize для каждого элемента набора.
scroll(функция)
Назначает функцию к событию scroll для каждого элемента набора.
select()
Вызывает событие select для каждого элемента набора.
select(функция)
Назначает функцию к событию select для каждого элемента набора.
submit()
Вызывает событие submit для каждого элемента набора.
submit(функция)
Назначает функцию к событию submit для каждого элемента набора.
unload(функция)
Назначает функцию к событию unload для каждого элемента набора.
Эффекты
Базовые:
show()
Отображает каждый из совпавших элементов набора, если они были скрыты (не имеет значения как: либо через функцию hide(), либо посред­ством display:none в таблице стилей).
show(скорость, вызов)
Отображает все совпавшие элементы набора с использованием ани­мационных эффектов, после чего опционально запускает указанную в ар­гументе вызов функцию.
hide()
Скрывает каждый из совпавших элементов набора, если они были видимыми.
hide(скорость, вызов)
Скрывает все совпавшие элементы набора с использованием анима­ционных эффектов, после чего опционально запускает указанную в аргу­менте вызов функцию.
37
toggle()
Переключает режим отображения каждого из элементов набора.
toggle(переключатель)
Переключает режим отображения каждого из элементов набора в за­висимости от значения переключателя (true – отображает элементы, false – скрывает элементы).
toggle(скорость, вызов)
Переключает режим отображения всех совпавших элементов набора с использованием анимационных эффектов, после чего опционально за­пускает указанную в аргументе вызов функцию.
Эффект «скольжения»:
slideDown(скорость, вызов)
Раскрывает все элементы набора, используя эффект изменения высо­ты элементов. Также по завершению операции возможен запуск функции, переданной в аргумент «вызов».
slideUp(скорость, вызов)
Скрывает все элементы набора, используя эффект изменения высоты элементов. Также по завершению операции возможен запуск функции, пе­реданной в аргумент «вызов».
slideToggle(скорость, вызов)
Переключает видимость всех совпавших элементов набора, исполь­зуя эффект изменения высоты элементов. Также по завершению операции возможен запуск функции, переданной в аргумент «вызов».
Эффекты появления/исчезания:
fadeIn(скорость, вызов)
Делает видимыми все элементы набора, используя изменение про­зрачности элементов. Также по завершению операции возможен запуск функции, переданной в аргумент «вызов».
fadeOut(скорость, вызов)
Делает невидимыми все элементы набора, затем устанавливает CSS свойство display в «none». Также по завершению операции возможен за­пуск функции, переданной в аргумент «вызов».
fadeTo(скорость, видимость, вызов)
Делает менее видимыми все элементы набора, изменяя прозрачность элементов до величины, указанной в аргументе «видимость».
Пользовательская анимация:
animate(параметры, duration, easing, вызов)
Данная функция предназначена для создания пользовательской ани­мации.
animate(параметры, опции)
Данная функция предназначена для создания пользовательской ани­мации.
stop(clearQueue, gotoEnd)
38
Останавливает все запущенные анимационные эффекты для всех указанных элементов.
Настройки:
jQuery.fx.off
Возвращает логическое значение. Глобально отключает все анима­ционные эффекты.
Элементы пользовательского интерфейса (jQuery UI)
jQuery UI – библиотека JavaScript с открытым исходным кодом для создания насыщенного пользовательского интерфейса в веб-приложениях, часть проекта jQuery. Построена поверх главной библиотеки jQuery и пре­доставляет разработчику упрощенный доступ к её функциям взаимодейст­вия, анимации и эффектам, а также набор виджетов.
Возможности
Взаимодействия
Draggable – предоставляет элементу возможность быть переме- щенным
с помощью мыши.
Droppable – контролирует, где перетаскиваемый (draggable) эле­мент может быть брошен.
Resizable – предоставляет возможность динамически изменять размеры элемента с помощью мыши.
Selectable – предоставляет возможность выделять один или не­сколько элементов пользовательского интерфейса из группы.
Sortable – предоставляет возможность сортировки для группы эле- ментов.
Виджеты
Accordion – виджет «Аккордеон».
Autocomplete – поле ввода с автодополнением.
 Button – улучшенная кнопка, может также быть флажком (check
box) или радио-кнопкой (radio button); все виды кнопки могут располагать­ся на панели инструментов (toolbar).
 Datepicker – виджет для выбора даты или диапазона дат.
 Dialog – диалоговое окно, которое может иметь любое содержимое.
 Progressbar – полоса прогресса.
 Slider – слайдер.
 Tabs – вкладки.
Эффекты
 Color Animation – анимирует изменение цвета компонента.
 Toggle Class, Add Class, Remove Class, Switch Class – анимируют
изменение набора класса стилей компонента.
39
Effect – множество эффектов, связанных с появлением и исчезно- вением компонентов интерфейса.
Toggle – функция переключения между режимами видимости компонентов с использованием эффектов.
Hide – функция исчезновения компонента с использованием эффектов.
Show – функция появления компонента с использованием эффектов.
Утилиты
Position – установка положения элемента относительно позиции другого элемента (выравнивание).
Пример:
<script type="text/javascript">
// $(f) – сокращение для $(document).ready(f),
// f выполняется после окончания загрузки документа.
$(function() {
$("#draggable").draggable();
});
</script>
<div id="draggable" style="width: 150px; height: 150px; padding:
0.5em;" class="ui-widget-content">
<p>Drag me around</p>
</div>
Вышеприведённый пример добавляет элементу с id=”draggable” воз­можность перетаскивания с помощью мыши.
40
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]