Web


Promise thenable chain

게시자: 이창연, 2015. 10. 8. 오전 1:46

Promise 의 thenable chain 에서 특이한 점은
reject 가 발생해 catch 가 호출된 이후에도 다음 then 으로 넘어간다는 점이다.

myPromise.then(function() {
    // resolve 되었다
}).catch(function() {
    // reject 되었다
}).then(function() {
    // 어쨌거나 여기는 들어온다.
    // try/catch 의 finally 와 비슷하네
});

click/tap Event 반응 속도

게시자: 이창연, 2014. 5. 29. 오후 2:41   [ 2014. 5. 29. 오후 2:50에 업데이트됨 ]

모바일에서 테스트 해보면 
jQuery 가 발생시키는 Tap 이벤트는 터치한 직후에 발생하지 않는다.
(click 이벤트도 마찬가지)
이유는 Double Tap 이 아니라는 것을 확인하기 때문.

빠른 반응속도를 원한다면 vmousedown 이나 vmouseup 을 사용해야 하지만
이를 이용하면 스크롤을 위해 터치하는 경우에도 이벤트가 발생한다.


Lightinig Touch 라는 라이브러리를 사용하면 빠른 반응속도를 낼 수 있다.
원리는 분석해봐야 함

input keydown, keyup, keypress event

게시자: 이창연, 2014. 5. 22. 오후 11:05   [ 2014. 5. 22. 오후 11:05에 업데이트됨 ]

input tag 에서 keydown, keyup, keypress 이벤트를 잡아보면 input tag 에 입력된 값이 서로 다르다.

keydown, keypress 에서는 마지막 입력을 제외한 값이 저장되어 있다.
keyup 에서는 마지막 입력까지 저장되어 있다.

keydown -> keypress -> keyup 이벤트 순으로 발생하는 듯

jQueryMobile pageinit 발생

게시자: 이창연, 2014. 5. 22. 오후 10:53   [ 2014. 5. 22. 오후 10:53에 업데이트됨 ]

pageinit 이벤트는 document ready 보다 먼저 발생하기 때문에 document ready handler 내에서 binding 할 수 없다.


<html>
<body>
    <div data-role="page1">...</div>
    <div data-role="page2">...</div>
</body>
</html>

<script>
$(document).on("pageinit", "#pageMenu", function (event) {
    // 바인딩 성공, 호출됨
});

$(function() {
    $(document).on("pageinit", "#pageMenu", function (event) {
        // 바인딩 실패, 호출안됨
    });
});
</script>

1-4 of 4