728x90

이미지 아이콘을 찾아야 할 때 유용하다.


https://www.flaticon.com/


https://www.iconfinder.com/


블로그 이미지

Link2Me

,
728x90

jQuery 에서 검색어를 입력하고 엔터키를 누르면 검색이 실행되도록 하는 코드를 테스트하는데 자꾸 오동작이 발생한다.

한마디로 개념 부족에서 오는 현상이었다.

프로그램은 절대 거짓말 하지 않는다는 지인의 말이 생각난다.

구현하려는 로직과 내가 코딩하는 것의 사이에서 놓치는 점이 무엇인가 다시 고민해보자.


처리하려는 로직을 순서대로 적어본다.

1. 엔터키를 입력할 때까지는 어떠한 것도 하지 않는다.

2. 엔터키가 입력되면 event.preventDefault(); 를 실행하여 자동으로 서밋되는 걸 방지한다.

3. 원하는 결과를 실행한다.


if(parseInt(device_type) === 3){ // PC에서 입력한 코드인지 확인
    // 27 is the ESC key (익스플로어나 크롬에서는 27로 나오고 파이어폭스는 0)
    $('#BBSSearchKeyword').on('keypress', function(event){
        var keycode = (event.keyCode ? event.keyCode : event.which);
        if(keycode == 13){ // 엔터키가 입력될 때까지는 어떤 것도 하지 않는다.
            event.preventDefault(); // 엔터키가 입력되면 이벤트의 기본 동작을 중단한다.
            //event.stopPropagation(); // 현재 이벤트가 상위로 전파되지 않도록 중단한다.
            BBSSearch(uri,where,keyword);
        }
    });
}

크롬브라우저 정상 동작, Firefox 브라우저 정상 동작
익스플로러에서 실행하니까 한글 입력 결과의 텍스트가 깨지면서 정확한 결과를 반환하지 않는다.
코드에서 UTF-8 을 기본으로 인식하는 코드를 추가해줘야 하나보다.

encodeURIComponent : URI로 데이터를 전달하기 위해서 문자열을 UTF-8 인코딩, IE8 이상의 브라우저에서 모두 지원한다.


블로그 이미지

Link2Me

,