다운받은 스킨에 적용된 onlyNumber 함수가 제대로 작동안해서 구글링하다보니 좋은 정보를 얻게 되어 공유합니다.
기존..
function onlyNumber() {
if((event.keyCode<48)||(event.keyCode>57)) {
alert('숫자만 입력');
event.returnValue=false;
}
}
=> 오른쪽 숫자키가 적용안됨
=> 파이어폭스에서 에러
새로 적용한 코드
/* Register Event Listener For FireFox */
if(navigator.userAgent.indexOf('Firefox') >= 0 ) {
var eventNames = ["mousedown", "mouseover", "mouseout", "mousemove", "mousedrag", "click", "dblclick", "keydown", "keypress", "keyup" ];
for( var i = 0 ; i < eventNames.length; i++ ) {
window.addEventListener( eventNames[i], function(e) {
window.event = e;
}, true );
}
}
function onlyNumber() { // 8 백스페이스 , 9 탭 , 37 왼쪽이동, 39 오른쪽이동, 46 delete
var key;
if(event.which) { // ie9 firefox chrome opera safari
key = event.which;
} else if(window.event) { // ie8 and old
key = event.keyCode;
}
if(!( key==8 || key==9 || key==37 || key==39 || key==46 || (key >= 48 && key <= 57) || (key >= 96 && key <= 105) )) {
alert("숫자만 입력해 주세요");
event.returnValue = false;
} else {
event.returnValue = true;
}
}
/* Register Event Listener For FireFox */ ~~
이 부분 적용안하면 파이어폭스에서 에러납니다.
적용안하고 사용하려면
<input onkeydown="onlyNumber(event)" > <= 괄호 안에 event 적고
function onlyNumber(event) { 여기도 역시 괄호 안에 적어야 되더군요.
해당부분에 대한 설명은 링크(http://aslike.egloos.com/2965771) 참고하시면 됩니다.
기존..
function onlyNumber() {
if((event.keyCode<48)||(event.keyCode>57)) {
alert('숫자만 입력');
event.returnValue=false;
}
}
=> 오른쪽 숫자키가 적용안됨
=> 파이어폭스에서 에러
새로 적용한 코드
/* Register Event Listener For FireFox */
if(navigator.userAgent.indexOf('Firefox') >= 0 ) {
var eventNames = ["mousedown", "mouseover", "mouseout", "mousemove", "mousedrag", "click", "dblclick", "keydown", "keypress", "keyup" ];
for( var i = 0 ; i < eventNames.length; i++ ) {
window.addEventListener( eventNames[i], function(e) {
window.event = e;
}, true );
}
}
function onlyNumber() { // 8 백스페이스 , 9 탭 , 37 왼쪽이동, 39 오른쪽이동, 46 delete
var key;
if(event.which) { // ie9 firefox chrome opera safari
key = event.which;
} else if(window.event) { // ie8 and old
key = event.keyCode;
}
if(!( key==8 || key==9 || key==37 || key==39 || key==46 || (key >= 48 && key <= 57) || (key >= 96 && key <= 105) )) {
alert("숫자만 입력해 주세요");
event.returnValue = false;
} else {
event.returnValue = true;
}
}
/* Register Event Listener For FireFox */ ~~
이 부분 적용안하면 파이어폭스에서 에러납니다.
적용안하고 사용하려면
<input onkeydown="onlyNumber(event)" > <= 괄호 안에 event 적고
function onlyNumber(event) { 여기도 역시 괄호 안에 적어야 되더군요.
해당부분에 대한 설명은 링크(http://aslike.egloos.com/2965771) 참고하시면 됩니다.
댓글 4개
게시글 목록
| 번호 | 제목 |
|---|---|
| 32099 | |
| 32098 | |
| 32093 | |
| 32081 | |
| 32080 | |
| 32067 | |
| 32038 | |
| 32036 | |
| 32028 | |
| 32019 | |
| 32013 | |
| 31992 | |
| 31989 | |
| 31984 | |
| 31980 | |
| 31979 | |
| 31972 | |
| 31963 | |
| 31961 | |
| 31944 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기