BASIC
인풋박스에 한글만 / 영문만 style / ime-mode
hookbox
2013. 5. 14. 04:49
<input> tag의 style에 아래와 같이 적어주면 된다.
style="ime-mode:active"
ime-mode는 아래 값중 하나를 가질 수 있다.
active : default 한글
inactive : default 영문
auto : 한글/영문 중 선택된 mode
disabled : 영문만을 입력할 수 있다
아래와 같은 경우 주의.
팝업 윈도우를 만들 때, 아래와 같은 상황에서는 disabled 된 것 같은
상황이 발생한다.
<input type='text' id='p_name' style='ime-mode:active;'>
:
<script>
p_name.focus(); // input box에 입력포커스를 주도록 함.
</script>
:
<script>
window.focus(); // popup 윈도우가 화면 앞쪽으로 튀어 나오도록 해줌.
<script>
위 스크립트가 실행되면, 실제로 키보드 입력포커스는 input box에 있지만
ime 프로그램이 보는 focus는 window가 갖게 된다.
window는 입력 focus가 없으므로 ime는 disabled 된다.
이 때, input box를 마우스로 클릭하면, ime는 한글입력 모드로 전환되는
현상을 볼 수 있다.
결국, p_name.focus()보다 window.focus()를 먼저 호출하도록 수정하면 됨.
style="ime-mode:active"
ime-mode는 아래 값중 하나를 가질 수 있다.
active : default 한글
inactive : default 영문
auto : 한글/영문 중 선택된 mode
disabled : 영문만을 입력할 수 있다
아래와 같은 경우 주의.
팝업 윈도우를 만들 때, 아래와 같은 상황에서는 disabled 된 것 같은
상황이 발생한다.
<input type='text' id='p_name' style='ime-mode:active;'>
:
<script>
p_name.focus(); // input box에 입력포커스를 주도록 함.
</script>
:
<script>
window.focus(); // popup 윈도우가 화면 앞쪽으로 튀어 나오도록 해줌.
<script>
위 스크립트가 실행되면, 실제로 키보드 입력포커스는 input box에 있지만
ime 프로그램이 보는 focus는 window가 갖게 된다.
window는 입력 focus가 없으므로 ime는 disabled 된다.
이 때, input box를 마우스로 클릭하면, ime는 한글입력 모드로 전환되는
현상을 볼 수 있다.
결국, p_name.focus()보다 window.focus()를 먼저 호출하도록 수정하면 됨.