jQuery는 which를 선호하여 표준 button 속성을 삭제했는데, 이는 다소 수수께끼입니다.
Firefox에서 도입되었으며 IE에서는 지원되지 않습니다. 원래 의도는 키보드의 키 값(keyCode)을 얻는 것입니다.
jQuery에서는 키보드의 키 값이 될 수도 있고 마우스의 키 값이 될 수도 있습니다.
즉, 사용자가 키보드의 어떤 키를 눌렀는지 확인할 때 사용할 수 있고, 마우스의 어떤 키를 눌렀는지 확인할 때도 사용할 수 있습니다. 그것은 두 가지 목적으로 사용됩니다.
소스 코드
// 추가할 항목 주요 이벤트의 경우
if ( event.which == null && (event.charCode != null || event.keyCode != null) ) {
event.which = event.charCode != null event.charCode : event.keyCode ;
}
// 클릭할 항목을 추가하세요: 1 === left; 2 === middle; 3 === right
// 참고: 버튼은 정규화되지 않았습니다. , 그러니 사용하지 마세요
if ( !event.which && event.button !== undefine ) {
event.which = (event.button & 1 ? 1 : ( event.button & 2 ? 3 : ( event.button & 4 ? 2 : 0 ) ));
}
표준 버튼은 0,1,2를 사용하여 마우스 왼쪽, 가운데, 오른쪽 버튼을 나타냅니다. 1,2,3을 사용하는 jQuery입니다.
또 다른 불편한 점은 jQuery 문서
event.which에는 마우스 버튼 값을 나타낼 수 있는 항목이 언급되지 않고 키보드 버튼 값만 언급되어 있다는 점입니다.
소스코드의 주석도 오해의 소지가 있습니다.
// 클릭에 대한 추가: 1 = == 왼쪽 ; 2 === 중간; 3 === 오른쪽
참고로 사람들이 클릭 이벤트를 사용하기는 쉽지만 실제로는 클릭을 획득합니다. 이벤트가 잘못되었습니다.
아래 클릭 이벤트를 사용해 보세요:
< ;!DOCTYPE html>
본문>