Web - кодинг: DHTML:


События Dynamic HTML



ОБРАТИТЕ ВНИМАНИЕ: события для некоторых HTML элементов , которые описаны здесь поддерживаются некоторыми версиями Netscape и более поздними версиями Internet Explorer Чтобы использовать браузер v4. 0 создавая сценарии, удостовертесь, что ваши потенциальные клиенты используют требуемую версию браузера, или они были перенанаправлены соответственно на нужную страницу.


onclick


Событие   onclick    может использоваться, чтобы выполнить функции сценария, когда пользователь нажимает на специфический элемент. Internet Explorer 4.0 поддерживает это событие почти для всех HTML элементов, в то время как Netscape и более ранние версии Internet Explorer поддерживают это только в некотрых элементах (типа links, image map и т.д.). См. порядок событий onmouse*   для деталей .


ondblclick


Cобытие  ondblclick   происходит, когда пользователем осуществляются двойные щелчки на специфическом элементе (почти все элементы для Internet Explorer 4.0). Например, следующая ссылка не отвечает на одиночно нажимание - нормальным способом, но двойное нажатие направляет к новому документу.

Это событие для Internet Explorer 4.0 и выше и Netscape 4.0 и выше.

Netscape 3.0 полностью поддерживает onclick событие и , но не поддерживает ondblclick событие, поэтому для пользователей Netscape 3.0 , ссылка будет полностью мертва. Пользователи Internet Explorer 3. 0x получили бы ошибку создания сценария.

     <A HREF="other_page.htm" onclick="javascript:return false" ondblclick="self.location.href ='other_page.html'">ссылка</A>  

Попробуйте (обратите внимание, что ссылка не будет направлять куда-нибудь, даже на двойном нажатии, но представит сообщение ).

ссылка-пример


Обратите внимание, что используются системные параметры настройки мыши, чтобы определить различие между одиночным и двойным щелчком.

ondragstart


Иногда, пользователь пытается перетащить элемент, куда-нибудь в другое место. Как простой пример, следующий текст ссылки изменится, когда вы попытаетесь перетащить ссылку.

Попробуйте: Drag me

Обратите внимание: С целью этого примера, заданное по умолчанию действие перемещения было отменено. Нормальное действие должно было бы загрузить документ, вызванный ссылкой .

onhelp


Cобытие  onhelp   обратите внимание, что объект должен в настоящее время быть выделенным. Простой пример, следующая ссылка отвечает только на двойное нажатие (см.  ondblclick  выше), и обеспечивает сообщение 'справки' озадаченному пользователю, который один раз нажимает ссылку ( в том случае если он нажимает клавишу F1 что бы получить ответ почему ничего не произошло после нажатия на ссылку).

    <A HREF="other_page.htm" LANGUAGE="Javascript" onclick="return false" onhelp="alert ('Дважды нажмите на ссылку, что бы открыть документ.');return false" ondblclick="self.location.href= 'other_page.htm'">ссылка</A>  

Попробуйте: Ссылка-пример

onkeydown


Cобытие  onkeydown  Используется при нажатии и держании клавиши.

onkeypress


Cобытие  onkeypress Используется при нажатии клавиши.

onkeyup


Cобытие  onkeyup Используется при отпускании клавиши.

KeyCode


ВНИМАНИЕ:   свойство KeyCode  содержит символ клавиши (UNICODE) , которая была нажата, чтобы заставить события  onkeypress  ,   onkeydown   или   onkeyup   работать.

onmousedown


Cобытие  onmousedown , когда пользователь нажимает кнопку на мыши.
См. порядок событий onmouse*   для деталей .

onmousemove


Событие onmousemove  происходит всякий раз, когда мышь пользователей перемещается поверх некоторого места в документe. Обратите внимание, при исполнении события onmousemove  , необходимо отменить так называемое событие bubbling , чтобы все работало правильно. Например, рассмотрите:

     <P onmousemove="top.status='Обычный текст.'">Вот например немного <EM onmousemove="top.status='КУРСИВ.'">курсивчиком </EM> написано</P>  

Здесь строка состояния будет подразумевать, что мышь перемещается только поверх содержания элемента <P>. Поэтому делаем так:

     <P onmousemove="top.status='Обычный текст.'">Вот например немного <EM onmousemove="top.status='КУРСИВ.';
    self.event.cancelBubble=true"> курсивчиком </EM> написано</P>  

Попробуйте - вторая строка отменяет событие bubbling:

Вот например немного курсивчиком написано

Вот например немногокурсивчиком написано



onmouseout


Cобытие  onmouseout  стартует , когда мышь пользователей оставляет область, определенную элементом. См. порядок событий onmouse*  

onmouseover


Cобытие  onmouseover  стартует , когда мышь пользователей входит в область, определенную элементом.

onmouseup


Cобытие  onmouseup  может использоваться, чтобы выполнить функции сценария после того, как мышь пользователей была нажата и отпущена - противоположность события  onmousedown . порядок событий onmouse*  

onselectstart


Cобытие  onselectstart  исполняется всякий раз, когда пользователь начинает выбирать некоторый текст, который является содержанием элемента. Например, выбор любого из текста в белом параграфе ниже заставляет изменяться его стиль.

Выбор любого элемента из этого текста заставит изменять его цвета ... иногда дико

Порядок событий onmouse*

Здесь представлена последовательность выполнения событий.

Следующие события мыши, для которых не требуется щелчок любых кнопок мыши, происходят в таком порядке:

Для мышкиных событий связанных с нажатием кнопки порядок следующий:

Так что любые функции сценария, выполненные событиями  onmousedown  или  onmouseup  произошли бы перед событиями  onclick  или  ondblclick  .




При перепечатке любого материала с сайта, видимая ссылка на источник www.warayg.narod.ru и все имена, ссылки авторов обязательны.

© 2005