class DarkRaha extends com { // разработка приложений
            String a="Главная" b="Контакты" c="О сайте"
};

HTML

DOM HTML

введение
объектной модель DHTML
события
свойства и методы
объект window
объект navigator
объект screen
объект history
объект location
объект document
объект event
объект Canvas

разное

генерация кода
фреймы
вставка текста в позицию каретки
скрыть/показать текст
ширина ячеек таблицы

Справочник по DHTML

Объект event

Данный объект содержит информацию о текущих событиях.

свойства

В отличие от IE в FF объект event не доступен глобально, и поэтому обработчики событий должны принимать его в качестве аргумента. А чтобы его имя не перекрывало глобальный event в IE, делать проверку в начале функции.

Ниже приведен пример обработчиков событий нажатия/отжатия клавиш, в результате которых элемент с id равным half виден только при нажатом ctrl, а элемент с id равным full при отжатом ctrl.


// обработчик нажатия клавиши Ctrl
function handleCtrlDown(event) {
if (!event)  // проверка event
   event=window.event;

if(event.ctrlKey){ // контрол нажат
   document.getElementById('full').style.display='none';
   document.getElementById('half').style.display='block';
   } 
}

// обработчик отжатия клавиши Ctrl
function handleCtrlUp() {
if (!event) // проверка event
   event=window.event;

if(!event.ctrlKey) {// контрол отжат
   document.getElementById('full').style.display='block';      
   document.getElementById('half').style.display='none';
   } 
}

Установить обработчики можно в определении элемента body. В этом случае проверка event в обработчиках не обязательна.


<body onkeyup='handleCtrlUp(event)' onkeydown='handleCtrlDown(event)'>

Если такой возможности нет, например при генерации тега body в php шаблоне, обработчики можно назначить позже в JavaScript.


document.getElementsByTagName('body')[0].onkeyup=handleShiftUp;
document.getElementsByTagName('body')[0].onkeydown=handleShiftDown;

цепочка выполнения события

По умолчанию событие обрабатывается по цепочке, начиная с дочернего элемента. Иногда нужно, чтобы событие, например onclick, в родительском элементе обрабатывалось только в том случае, если ни один из дочерних элементов его не обратал. Тогда прервите цепочку выполнения.


// прерываем цепочку выполнения события
event.cancelBubble=true;

Рейтинг@Mail.ru