'cross browsing'에 해당되는 글 11

  1. 2010.03.31 Object Detection - 브라우저 구분
  2. 2009.06.11 이동하지 않는 링크
  3. 2009.06.08 Opera
  4. 2009.06.05 iframe을 사용한 글보기가 안보임
  5. 2009.06.01 Run any browser from the web
  6. 2009.05.28 보이지 않는 게시판 글
  7. 2009.05.28 겹쳐보이는 레이어(div)
  8. 2009.05.18 동작하지 않는 메뉴
  9. 2009.04.20 Javascript Event
  10. 2009.04.14 Javascript
  11. 2009.01.31 브라우저 판별법

Object Detection - 브라우저 구분

Cross-Browsing 을 고려할 때 IE 인지 FF 인지를 구별하는게 아니라
객체의 존재 유무를 따져야 한다.(Object Detection)
특정 브라우저에서 지금은 지원하지 않는 기능을 나중에 구현할 수도 있고, 기능을 더이상 지원하지 않을 수도 있다.

이동하지 않는 링크

어떤 WAS 메뉴얼에서 링크를 클릭해도 이동이 안됨

- this.parent.frames('tableFrame').location.href 를 this.parent.frames.mainFrame.location.href 으로 변경하면 된다.

Opera

- 에러 콘솔창

iframe을 사용한 글보기가 안보임


모 주간지 이벤트 게시판이 FF에서 위와 같이 보인다.
1. 기껏 objFrame을 가져와 놓고 직접 iframe을 참조하고 있다.
2. getRetry()를 계속 호출한다. 왜?
3. 그리고 iframe을 사용하는 이유는 뭘까?

Run any browser from the web

- Xenocode Browser Sandbox - Run any browser from the web
- 모든 브라우저를 웹에서 구동하는 Xenocode Browser Sandbox

- 실행파일
http://start-c.xenocode.com/layers/ie6/6-0-0-0__1/ie6.exe
http://start-c.xenocode.com/layers/ie7/7-0-0-0__0/ie7.exe
http://start-c.xenocode.com/layers/ie8/8-0-0-0__0/ie8.exe
http://start-c.xenocode.com/layers/firefox/3-0-3-0__1/firefox.exe
http://start-c.xenocode.com/layers/firefox2/2-0-0-17__2/firefox2.exe
http://start-c.xenocode.com/layers/opera/9-63-0-0__7/opera.exe
http://start-c.xenocode.com/layers/safari/3-2-0-0__2/safari.exe

캬~

- Install multiple versions of IE on your PC

2010-02-22 추가
Xenocode Browser 를 실행시키고 나면 현재 설치된 IE의 속성을 보면 이렇게 깨진다.
설치 전후의 레지스트리를 보면 차이가 많이 난다.

보이지 않는 게시판 글


D 개발자 포털의 게시판이 FF에서는 보이지 않는다.
소스는 다음과 같다.


document.all 을 쓰고 있다.
IE에서는 개체이름이나 아이디로 직접 접근이 가능하고,
document.all.개체이름 또는 document.all.개체아이디로도 접근이 가능하다.

특이한 점은 보이지 않는 textare에 iframe에 들어갈 내용을 가지고 있다.

겹쳐보이는 레이어(div)


공지사항과 사업부 공지사항이 각각 div로 되어 있어서 클릭하면 해당 div를 보여준다.
IE에서는 제대로 보이는데 FF에서 겹쳐 보인다.

두 div의 visibility가 visible로 되어 있어서 FF에서 겹쳐 보인다.
IE에서는 첫번째 div가 보임.

간단한 페이지를 만들어 테스트를 해보면 IE, FF 둘다 겹쳐 보이는데
이 경우는 div내에 table이 있고 iframe으로 다른 페이지를 가져오는 구조임.

동작하지 않는 메뉴

FF로 Q사 사이트를 방문해서 메뉴를 눌러도 화면이 변경되지 않는다.
IE에서는 제대로 동작한다.
음... 소스를 보자.


대충 이렇다.
lnk를 직접 참조하고 있다. IE에서만 가능. 그래서 document.getElementById() 를 사용하라고 나온다.
그리고 anchor 태그에 클릭이벤트를 발생시켰다. 함수가 아니라고 나옴.

이렇게 구현하는 것이 어떨까?


=-=> 근데 굳이 이렇게 할 이유가...http://www.plyfly.net/76 봐봐

Javascript Event

Javascript



브라우저 판별법

ajaxian 에 재미있는 글이 올라왔다.
IE 를 구별하는 가장 짧은 방법이라고 한다. (현재, 여기도 가보시라)

Gareth Heyes 가 그의 블로그에 Firefox, IE, Safari, Chrome, Opera 를 구별하는 한줄짜리 스크립트를 포스팅했다.