정말 IE8 은 골치 아픈 브라우저가 아닌가 싶다. 유독 혼자만 튀고 싶은 MS의 성격을 그대로 가지고 있는 듯 하다.

분명 브라우징 속도는 빨라진 듯 같다(하지만 MS에서 말하는 것처럼 다른 브라우저보다 빠르다는 느낌은...-_-a)

웹표준을 지향한다던 IE8, 하지만  호환성 테스트 중 최하위..더군다나 이전 버젼의 IE 나 타 사의 브라우저에는 정상적으로

작동하는데 유독 IE8에서만 동작이 안되는 페이지들도 있다. IE8만의 웹표준은 아닐까?

 

여하튼 ExtJS를 통해 개발하면서 발견한 또하나의 버그?

 

위 그림처럼 텍스트상자의 상단 부분의 외곽선이 보이지 않는다.

확인해 보니 2.x 버젼의 ExtJS를 사용한 경우 IE8에서만 발생하는 문제였다.

해결 방법은  

.ext-ie8 .x-form-text{
    margin: 0px 0px;
}

.ext-ie8 .x-form-trigger{
    top: 1px;
}

 을 추가해 주면 된다.

 

 

폼패널에서는 Config 옵션에에 keys 라는 옵션이 있다.

이것은 폼패널내에서 키이벤트를 핸들링 하는 옵션이다.

많이 사용하는 예는 엔터키를 쳤을 때 OK 버튼 클릭 이벤트가 수행되도록 하는 것이며

그 예는 다음과 같다.

keys:[{
     key:[10,13] // enter
    ,scope:this
    ,stopEvent:true
    ,fn:this.onOK
   }]

TextField만를 사용할 때는  키이벤트를 어떻게 할까?

TextField에는 keydown, keypress, keyup 이라는 세가지 키이벤트를 정의하고 있음에도 불구하고

다음과 같이 리스너로 등록해봐도 작동이 되지 않는다.

listeners:{
   keydown:function(t,e){
      if(e.keyCode == 13){
        //to do
      }
  }}

왤까? 그 이유는?

This event only fires if enableKeyEvents is set to true.

 TextField에서는  enableKeyEvents 옵션이  true  인 경우에만 키이벤트를 핸들링 할 수 있다.

var field = new Ext.form.TextField({
   enableKeyEvents: true
});
field.on('keydown', function() {
   //to do
});

 

 
 
블로그 이미지

시반

시반(詩伴)이란 함께 시를 짓는 벗이란 뜻을 가지고 있습니다. 함께 나눌수 있는 그런 공간이길 바라며...

카테고리

분류 전체보기 (233)
개발 이야기 (73)
WEB2.0 (57)
DB2 (24)
MySQL (6)
오라클 (26)
기타 (44)
취미 (0)
잡담 (2)