差分
このページの2つのバージョン間の差分を表示します。
| 両方とも前のリビジョン前のリビジョン次のリビジョン | 前のリビジョン | ||
| study:javascript:dojo:monitor [2008/12/05 00:27] – banana | study:javascript:dojo:monitor [2010/03/02 12:18] (現在) – banana | ||
|---|---|---|---|
| 行 1: | 行 1: | ||
| - | ====== Monitor idle state with user events ====== | + | ====== Monitor idle state with custom |
| 최근 ajax 관련 project를 하면서, 유저가 동작을 멈췄는지 계속 조작하고 있는지 모니터링할 필요성이 | 최근 ajax 관련 project를 하면서, 유저가 동작을 멈췄는지 계속 조작하고 있는지 모니터링할 필요성이 | ||
| - | 제기되었다. 이런저런 궁리를 해도 생각되로 되지 않던 차에 Google 검색에서 그럴 듯한 것이 | + | 제기되었다. 이런저런 궁리를 해도 생각되로 되지 않던 차에 Google 검색에서 그럴 듯한 것을 발견하였다. |
| - | 있었다. | + | |
| **Kaushal Sheth**씨의 [[http:// | **Kaushal Sheth**씨의 [[http:// | ||
| 사용하고 있던 **dojo toolkit**이 아니라 **prototype** 프레임워크로 작성되어 있었다. | 사용하고 있던 **dojo toolkit**이 아니라 **prototype** 프레임워크로 작성되어 있었다. | ||
| 行 52: | 行 51: | ||
| }); | }); | ||
| </ | </ | ||
| + | |||
| ===== Add Event Listener ===== | ===== Add Event Listener ===== | ||
| 行 70: | 行 70: | ||
| </ | </ | ||
| 훨씬 깔끔해 보이지 않는가? | 훨씬 깔끔해 보이지 않는가? | ||
| - | 이 코드를 dojo toolkit으로 다음과 같이 표현할 수 있다. | + | 이 코드를 |
| <code javascript> | <code javascript> | ||
| dojo.addOnLoad(function(){ | dojo.addOnLoad(function(){ | ||
| 行 76: | 行 76: | ||
| }); | }); | ||
| </ | </ | ||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| 行 96: | 行 110: | ||
| </ | </ | ||
| 여기서 memo는 나중에 event를 통해서 접근할 수 있어서, 어떤 값을 저장하는데 상당히 편리하다. | 여기서 memo는 나중에 event를 통해서 접근할 수 있어서, 어떤 값을 저장하는데 상당히 편리하다. | ||
| - | 이에 비해 **dojo toolkit**의 %%Event System%%은 특히 Custom Event를 생성하는 유틸리티 메소드를 | ||
| - | 가지고 있지 않다. | ||
| - | DOM의 %%createCustomEventObject%%를 통해 등록하는 방법이 있긴 하지만, 유연성이 떨어진다. | ||
| - | | + | 이에 비해 |
| - | 이후 차기 버전에서 %%custom | + | 있다. |
| + | 것이 | ||
| + | |||
| + | 어떤 의미에서는 [[study: | ||
| + | 쪽에서는 누가 subscribe를 | ||
| + | 가 가능하게 되었다. 그만큼 유연하고 강력한 event system이라고 생각한다. | ||
| + | |||
| + | 사용예는 다음과 같다. | ||
| + | <code javascript> | ||
| + | | ||
| + | | ||
| + | // | ||
| + | </ | ||
| ===== Demo page ===== | ===== Demo page ===== | ||
| 行 108: | 行 132: | ||
| ===== reference ===== | ===== reference ===== | ||
| - | - [[http:// | + | - [[http:// |
| - | - [[http:// | + | - [[http:// |
| ~~DISCUSSION~~ | ~~DISCUSSION~~ | ||