jQuery: IE에서 Radio 버튼 변경시 이벤트 처리 방법

IE는 다른 브라우져와 달리 Radio 버튼상태가 변경됐을 때 바로 change 이벤트를 발생시키지 않고 다른 엘리먼트를 클릭했을 때 change 이벤트를 발생시킨다. 그래서 Radio 버튼 상태의 변화에 따라 어떤 처리를 하려면 IE에서는 click 이벤트를 사용해야 한다.

브라우져에 상관없이 Radio 버튼 상태의 변경을 감지하려면 jQuery에서는 다음의 코드를 사용하면 된다.

[code language=”javascript”]
$(document).ready(function(){
$(".hiddenOnLoad").hide();
$("#viewByOrg, #viewByProduct").bind(($.browser.msie ? "click" : "change"), function () {
$(".visibleOnLoad").show();
$(".hiddenOnLoad").hide();
});
});
[/code]

IE용 자바스크립트 디버거 CompanionJS

IE8에는 자바스크립트 디버거가 포함되어 있지만 그전 버전에는 디버거가 없어서 자바스크립트 디버깅하기가 여간 짜증나는 일이 아니다. ‘FirefoxFirebug같은 도구가 왜 없는거야 !!’ MS에 불평만 하고 있었는데 정말 괜찮은 도구를 발견했다. CompanionJS. 웹개발하시는 분들은 꼭 다운받으세요.

다운로드

Companion.JS (pronounced Companion dot JS or CJS) is a Javascript debugger for IE.
The current version is 0.5.
Companion.JS adds the following features to IE :

  • Detailled javascript error reporting (call stack and real file name where the error occured).
  • “Firebug”-like Console API feature.
  • Javascript console feature useful to inspect javascript objects at runtime.
  • A toolbar icon to open the Companion.JS panel.

Download the installer, guaranteed spyware/malware free and packaged with a straightforward and complete un-installer.

(Download zipped intaller for people unable to download .exe files due to proxy limitations)


To be able to use Companion.JS you’ll need to have a Microsoft script
debugger installed. There are many cases where you already have this
component install. To check if you need it see Installing Companion.JS for details.

Here are some screenshots :


Detailled Error reporting

In the top-left corner the notifying panel which pops-up when an
error occurs in the current page if the Companion.JS panel is not open.
At the bottom of the page…



Console API feature

네이버 아직도 이렇게 서비스를 하다니 쩝

네이버는 모두가 인지하듯이 국내 검색의 70%이상의 시장 점유율을 갖고 있는 국내 1위의 사이트이다. 오늘 포토스케이프 다운받으러 네이버에 갔는데,이런 다음과 같은 화면을 보고 잠시 멍해져서 바라보고 있었다.

사용자 삽입 이미지

‘인터넷 익스플로러에서만 다운로드가 가능합니다.”

왜 IE에서만 가능하게 만들었을까? 다운로드창이 ActiveX로 구현이 된거로 알고 있는데, 이는 고객에게 보다 나은 서비스를 제공하기 위해서라기 보다는 창에 광고를 달아서 수익을 내고자 함은 누구나 뻔히 알 수 있을것이다. IE만 가능하다는 얘기는 결국 광고 수익을 기대할 수 없은 고객은 다운로드 받을 가치도 없다는 얘기로 해석이 가능할 것 같은데, 대한민국 인터넷 1위 기업이면서, 거의 독식을 하고 있는 회사가 정말 이렇게 서비스를 해도 되는 건지 모르겠다.

기업의 존재 이유가 이융창출은 인정하는 바이지만, 기업의 사회적 책임도 간과해서는 안될 것 같다. NHN 여러분께 간곡히 부탁드립니다. 이렇게 서비스 하면 안됩니다.