2009-07-27 5 views
5

최근에 질문을하고 선택 상자에서 클릭 핸들러를 변경할 제안이있는 몇 가지 코드를 게시했습니다.JQuery Click vs. Change

내 질문에 대한 답변 : 항상 Change 핸들러를 사용해야합니까? 아니면 Click이 여전히 적합한 상황이 있습니까 (브라우저 간 호환성이 있음).

EDIT : 내가 모으는 것은 다음과 같습니다. 선택 상자와 같은 것들에 대해서는 변경 방법이 있습니다. 이미지와 같은 단순한 경우에는 변경 사항이 없으므로 클릭이 필요합니다.

답변

1

클릭하면 작동하지 않습니다. x-broswer, IE가 선택 또는 옵션 클릭에 응답하지 않습니다. 변경 가능한 유일한 옵션은 입니다.

+0

감사합니다. 그게 전부입니다. – Dirk

+3

올바르지 않습니다. IE는 예상대로 변경 이벤트를 발생시키지 않습니다. 대부분의 브라우저는 요소의 값이 변경되는 순간 변경 이벤트를 발생시킵니다. 그러나 IE는 요소가 포커스를 잃은 후에 값이 변경된 경우에만 변경 이벤트를 시작합니다. 따라서 크로스 브라우저 코딩의 경우 진정한 응답 성 응용 프로그램을위한 텍스트 상자의 드롭 다운 목록 및 키 업을 위해 클릭을 사용하는 것이 더 좋습니다. 그렇지 않으면 사용자가 알 수있는 최상의 브라우저에서 이벤트 처리를 위해 요소를 클릭하거나 탭 해제해야합니다. – illvm

+0

@illvm - 그게 내가 쓰려고하는 것입니다. 얼마 전에이 문제를 처리해야했습니다. – montrealist

5

텍스트 입력, 선택 상자, 체크 및 라디오 버튼과 같은 양식 컨트롤에 관해서는 onChange 이벤트를 사용해야합니다. 링크, 목록, 컨테이너 등 다른 물건에 관해서는 onChange 이벤트를 지원하지 않기 때문에 반드시 click을 사용해야합니다.