Итак создадим сам список и поле для вывода описаний на html-странице:
jQuery
Урок:
Описание:
Итак, мы могли бы каждому пункту списка задать обработчик события - функцию desc, которая и будет задавать описания в зависимости
от выбранного пункта. Но jQuery позволяет сделать это еще проще.
На странице script.js нам достаточно назначить функцию, которая будет срабатывать каждый раз, когда документ готов к работе (назовем ее init). Сама же функция init будет вызывать функцию desc каждый раз, когда выбран какой-либо пункт списка (т.е. наступает событие change):
$(document).ready(init);
function init(){
$('#lesson').bind('change', desc);
}
function desc(){
var op=$('#lesson').val();
switch (op)
{
case '1': $('#desc').text('Первый урок по jQuery знакомит с основными понятиями
и возможностями этой библиотеки.'); break;
case '2': $('#desc').text('Второй урок по jQuery знакомит с таким понятием, как селекторы.');
break;
case '3': $('#desc').text('Третий урок по jQuery знакомит с таким понятием, как фильтры.');
break;
}
}
Вот и все.
Можете скачать исходный код примера и
посмотреть, как он работает. Продолжаем изучать методы по обработке событий:
Предыдущий урок Вернуться в раздел Следующий урок
Теперь нажмите кнопку, что бы не забыть адрес и вернуться к нам снова.
Как создать свой сайт → Уроки jQuery → Урок 7. Методы по обработке событий
jQuery - Урок 7. Методы по обработке событий
Сегодня мы познакомимся с некоторыми методами по обработке событий. Как всегда сначала их перечислим, а потом посмотрим пример:- ready(fn) - назначает функцию, которая будет выполняться, когда документ готов к работе.
Пример:Данная инструкция говорит браузеру, что сразу после загрузки документа должна сработать функция init.$(document).ready(init); - bind(type, fn) - связывает обработчик события с самим событием.
Пример:Данная инструкция говорит браузеру, что при щелчке по div-у должна сработать функция init (здесь click - событие, а init - функция, обработчик события).$(div).bind('click', init);
Урок:
Описание:
Описание:
Итак создадим сам список и поле для вывода описаний на html-странице:
Описание:
На странице script.js нам достаточно назначить функцию, которая будет срабатывать каждый раз, когда документ готов к работе (назовем ее init). Сама же функция init будет вызывать функцию desc каждый раз, когда выбран какой-либо пункт списка (т.е. наступает событие change):
- one(type, fn) - связывает обработчик события с самим событием, но выполняется он только один раз.
Пример:Данная инструкция говорит браузеру, что при щелчке по div-у должна сработать функция init, но инструкции этой функции будут выполнены только один раз.$(div).one('click', init);
Если в нашем примере со списком уроков мы заменим bind на one, то функция desc сработает только один раз, т.е. при первом выборе урока из списка мы увидим описание, но далее, сколько бы мы не щелкали по пунктам списка, описание меняться не будет. - hover(over, out) - когда указатель мыши находится над объектом, срабатывает функция over,
а когда указатель мыши выходит за объект, то функция out.
Пример:первый абзац
второй абзац
третий абзац
Итак, html-код:Код функции:jQuery первый абзац
второй абзац
третий абзац
Таким образом, когда указатель мыши над абзацем, его фон - синий, а при выходе - белый.$(document).ready(init); function init(){ $('p').hover( function(){$(this).css("background-color", "blue");}, function(){$(this).css("background-color", "white");} ); }
Обратите внимание, здесь мы применили краткую запись, т.е. использовали функции без названий, а могли расписать и так:Выбирайте ту форму записи, которая вам больше нравится.$(document).ready(init); function init(){ $('p').hover(hOver, hOut); } function hOver(){ $(this).css("background-color", "blue"); } function hOut(){ $(this).css("background-color", "white"); } - toggle(fn1, fn2, ...fn) - переключатель между функциями. Щелчок по элементу вызывает функцию fn1, повторный
щелчок - функцию fn2, третий щелчок - функцию fn3 и т.д.
Пример:Данная инструкция говорит браузеру, что при щелчке по абзацу, его фон станет синим, при повторном щелчке - белым.$('p').toggle( function(){$(this).css("background-color", "blue");}, function(){$(this).css("background-color", "white");} ); - click(fn) - функция fn связывается с событием click.
Пример:Данная инструкция говорит браузеру, что при щелчке по div-у, его фон станет синим.$('div').click( function(){$(this).css("background-color", "blue");} );
click() - эмулируется возникновение события click.
Пример:Данная инструкция говорит браузеру, что при щелчке по div-у его фон станет синим и эмулирует это событие для первого div-а.$('div').click( function(){$(this).css("background-color", "blue");} ); $('div:first').click();
Вот как это выглядит на практике:Иными словами, вызов метода с функцией в качестве аргумента, например click(fn), назначает обработчик события, вызов без аргумента, например click(), эмулирует возникновение этого события.первый divвторой divтретий div
Аналогичные методы определены и для других событий, поддерживаемых javascript, например: blur(), blur(fn), focus(), focus(fn) и т.д. Если забыли, какие события бывают и когда наступает то или иное событие, то посмотрите здесь.
Предыдущий урок Вернуться в раздел Следующий урок
Если этот сайт оказался вам полезен, пожалуйста, посмотрите другие наши статьи и разделы.
|
Код кнопки: |
Теперь нажмите кнопку, что бы не забыть адрес и вернуться к нам снова.
|
|