Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Как проверить, поддерживается ли событие? (https://javascript.ru/forum/misc/24446-kak-proverit-podderzhivaetsya-li-sobytie.html)

devote 30.12.2011 05:46

можно еще так проверить:
eventNames = (function(){
    var conf ={ animationend: 'webkitanimationend' },
        div = document.createElement('div');

    div.addEvenetListener( 'animationend', function(){
        conf.animationend = 'animationend';
    }, false );

    var o = document.createEvent( 'Events' );
    o.initEvent( 'animationend', false, false );
    div.dispatchEvent( o );

    div = null;
    return conf;
}());

devote 30.12.2011 05:48

ну там потом после диспатча еще и удалить событие и т.д. но принцип должен быть понятен

trikadin 30.12.2011 05:50

Цитата:

Сообщение от devote
ну там потом после диспатча еще и удалить событие и т.д. но принцип должен быть понятен

Как всегда, всё костылём через одно место...

devote 30.12.2011 05:51

Цитата:

Сообщение от trikadin
Как всегда, всё костылём через одно место...

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

Nekromancer 30.12.2011 05:53

devote,
Это не докажет существование события. Так можно вызвать любое событие.

FINoM 30.12.2011 05:54

Цитата:

Сообщение от Nekromancer
Это не докажет существование события. Так можно вызвать любое событие.

Ага, только что проверил, так и есть.

devote 30.12.2011 05:56

Цитата:

Сообщение от Nekromancer
devote,
Это не докажет существование события. Так можно вызвать любое событие.

ну да, шото я не подумал :-?

devote 30.12.2011 05:58

ну значит не диспатчить, а организовать микроанимацию... короче заставить браузер выполнить событие...

FINoM 30.12.2011 05:59

Угу, изначально так подумал, но это идиотизм.

devote 30.12.2011 06:02

Цитата:

Сообщение от FINoM
Угу, изначально так подумал, но это идиотизм.

Ну дык ты в мире программинга крутишся, привыкать пора к идиотизму :D


Часовой пояс GMT +3, время: 22:58.