# 14: Прилагођени догађаји - ЦСС-трикови

Anonim

Пошто смо управо разговарали о догађајима, сада је право време да поменемо и прилагођене догађаје. Сви догађаји о којима смо до сада говорили су "стварни" догађаји, да тако кажем. Догађаји који потичу из ДОМ-а на основу стварних ствари које се дешавају, попут клика или притиска тастера. Ови догађаји се могу вештачки „покренути“ у јКуери-у. На пример, да бисте „лажирали“ клик на дугме, можете да урадите:

$("#some-button").trigger("click");

Тада ће се сви обрађивачи кликова везани за то дугме активирати као да је корисник заиста кликнуо на то дугме. Али шта ако јесмо:

$("#some-button").trigger("dance");

Шта се онда дешава? „Плес“ није „прави“ догађај. Али ниједна грешка неће бити избачена. Случајно се вероватно деси да ниједан руковалац „плесом“ није везан за то дугме. Али могло би их бити и то је у основи оно што је прилагођени догађај. Догађај са именом које само измислите.

Зашто би то урадио? Углавном из организационих разлога. Можда желите да одвојите ЈаваСцрипт који обрађује догађаје и радње и ЈаваСцрипт који обрађује податке и административне ствари. То је врло разумно. Да је ово дугме можда дугме „Сачувај поставке“, могли бисте једноставно да покренете прилагођени догађај под називом „сачувај подешавања“, а негде другде има обрађивач који чека да се тај догађај покрене и врши стварно чување података. То смо у суштини учинили у примеру из видео снимка.

Још један случај употребе прилагођених догађаја је ауторизација генеричких компоненти корисничког интерфејса. О томе говорим у овом блогу.

Можда стварате ефекат хармонике као компоненту корисничког интерфејса. Хармоника ради оно на чему сви хармонике отварају и затварају плоче на кликове / славине. Ваша УИ компонента то чини врло лепо. Сада програмер који користи ту хармонику може имати посебне и јединствене ствари које желе да се догоде с њом. Рецимо да за подешавање рачуна користе хармонику, а када корисник затвори панел, жели да сачува податке из елемената обрасца на тој плочи. Традиционални модел може бити да аутор те компоненте УИ хармонике нуди функције повратног позива када се та радња догоди. Када иницијализујете хармонику, предајете функције повратног позива које желите да позовете када се те ствари догоде. То је један пут којим треба ићи доле. Други пут би био да хармоника само аутоматски покрене прилагођене догађаје за све релевантне радње које чини.Када се тај панел затвори, могао би да се активира аpanelClosedдогађај на самом елементу хармонике. Тада би програмери који раде с тим могли само да се вежу за те догађаје. То је само још један пут којим можете да идете из организационих разлога који може бити прилично елегантан.