差分
このページの2つのバージョン間の差分を表示します。
| 両方とも前のリビジョン前のリビジョン次のリビジョン | 前のリビジョン | ||
| study:javascript:dojo:monitor [2008/12/05 01:00] – 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: | ||
| }); | }); | ||
| </ | </ | ||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| 行 98: | 行 110: | ||
| </ | </ | ||
| 여기서 memo는 나중에 event를 통해서 접근할 수 있어서, 어떤 값을 저장하는데 상당히 편리하다. | 여기서 memo는 나중에 event를 통해서 접근할 수 있어서, 어떤 값을 저장하는데 상당히 편리하다. | ||
| - | 이에 비해 **dojo toolkit**은 | + | |
| - | 있다. **dojo**의 **Pub/Sub Event System**은 아직 완전히 이해하지 못한 단계라서 | + | 이에 비해 **dojo toolkit**은 |
| - | 메소드로 대체하였다. 이후에 좀더 | + | 있다. **prototype**의 fire에 |
| + | 것이 %%dojo.subscribe%%이다. | ||
| + | |||
| + | 어떤 의미에서는 [[study: | ||
| + | 쪽에서는 누가 subscribe를 해도 신경쓸 필요가 없다. \\ 덕분에 event와 listener사이의 decoupling(분리) | ||
| + | 가 가능하게 되었다. 그만큼 | ||
| + | |||
| + | 사용예는 다음과 같다. | ||
| + | <code javascript> | ||
| + | | ||
| + | | ||
| + | // | ||
| + | </ | ||
| 行 108: | 行 132: | ||
| ===== reference ===== | ===== reference ===== | ||
| - | - [[http:// | + | - [[http:// |
| - | - [[http:// | + | - [[http:// |
| ~~DISCUSSION~~ | ~~DISCUSSION~~ | ||