JS 도라에몽
CHAT GPT가 골라준 자바스크립트 기능들
박금향
2023. 9. 6. 17:00
자바스크립트에서 자주 쓰이는 이벤트들을 알려달라고 했다.
CHAT GPT의 답변 :
JavaScript에서 자주 사용되는 이벤트 중 일부를 아래에 나열하겠습니다. 이러한 이벤트들은 웹 애플리케이션을 상호작용 가능하게 만드는 데 중요합니다.
- click: 요소를 클릭할 때 발생하는 이벤트. 버튼, 링크 등을 클릭할 때 사용됩니다.
- mouseenter/mouseleave: 마우스가 요소에 들어가거나 나갈 때 발생하는 이벤트. 주로 마우스 호버 효과를 구현하는 데 사용됩니다.
- keydown/keyup: 키보드의 키가 눌렸을 때 (keydown) 또는 떼어졌을 때 (keyup) 발생하는 이벤트. 주로 키보드 단축키나 입력 검증 등에 사용됩니다.
- submit: <form> 요소가 제출될 때 발생하는 이벤트. 주로 폼 데이터를 서버로 전송하기 전에 검증하는 데 사용됩니다.
- load: 웹 페이지나 이미지 등이 로드될 때 발생하는 이벤트. 주로 이미지나 외부 스크립트 등을 로딩하는 데 사용됩니다.
- resize: 브라우저 창의 크기가 변경될 때 발생하는 이벤트. 반응형 웹 디자인을 구현할 때 사용됩니다.
- scroll: 웹 페이지가 스크롤될 때 발생하는 이벤트. 무한 스크롤, 스크롤 맨 위로 이동하기 등에 사용됩니다.
- focus/blur: 요소가 포커스를 받거나 잃을 때 발생하는 이벤트. 주로 폼 요소나 입력란에 사용자의 입력을 처리하는 데 사용됩니다.
- change: <input>, <select>, <textarea> 등의 요소 값이 변경될 때 발생하는 이벤트. 주로 폼 요소의 값 변경을 감지하는 데 사용됩니다.
- contextmenu: 마우스 오른쪽 버튼을 클릭하면 발생하는 이벤트. 컨텍스트 메뉴나 커스텀 팝업 메뉴에 사용됩니다.
- mouseenter/mouseleave: 마우스가 요소 위로 들어오거나 나갈 때 발생하는 이벤트. 주로 호버 효과나 팝업 툴팁 표시 등에 사용됩니다.
- touchstart/touchend: 터치 기반 디바이스에서 사용자의 터치 동작을 감지하기 위한 이벤트.
- drag/dragstart/dragend/dragover/dragleave/drop: 요소 드래그 앤 드롭 이벤트. 요소를 드래그하고 놓을 때 발생합니다.
- animationstart/animationiteration/animationend: CSS 애니메이션 이벤트. 애니메이션이 시작, 반복, 종료될 때 발생합니다.
- DOMContentLoaded: 페이지의 초기 HTML 문서가 완전히 로드되고 파싱될 때 발생하는 이벤트. 주로 초기화 코드를 실행하는 데 사용됩니다.
자바스크립트 사실 바닐라 잘 안 쓰고 제이쿼리로 하니까 제이쿼리로 다시 써달라고 했다.
1. click :
$(document).ready(function() {
$("button").click(function() {
// 클릭 이벤트 핸들러
});
});
2. mouseenter/mouseleave :
$(document).ready(function() {
$("element").mouseenter(function() {
// 마우스가 요소에 들어갔을 때 실행할 코드
});
$("element").mouseleave(function() {
// 마우스가 요소에서 나갔을 때 실행할 코드
});
});
3. keydown/keyup :
$(document).ready(function() {
$(document).keydown(function(event) {
// 키보드 키 다운 이벤트 핸들러
});
$(document).keyup(function(event) {
// 키보드 키 떼기 이벤트 핸들러
});
});
4. submit :
$(document).ready(function() {
$("form").submit(function(event) {
event.preventDefault(); // 폼 제출 방지
// 제출 이벤트 핸들러
});
});
5. load :
$(window).on("load", function() {
// 페이지나 이미지 등이 로드된 후 실행할 코드
});
6. resize :
$(window).on("resize", function() {
// 브라우저 크기가 변경될 때 실행할 코드
});
7. scroll :
$(window).on("scroll", function() {
// 스크롤 이벤트 핸들러
});
8. focus/blur :
$(document).ready(function() {
$("input").focus(function() {
// 포커스 이벤트 핸들러
});
$("input").blur(function() {
// 포커스가 해제될 때 실행할 코드
});
});
9. change :
$(document).ready(function() {
$("select, input[type='checkbox'], input[type='radio']").change(function() {
// 변경 이벤트 핸들러
});
});
10. contextmenu :
$(document).ready(function() {
$("element").on("contextmenu", function(event) {
event.preventDefault(); // 컨텍스트 메뉴 무시
// 컨텍스트 메뉴 이벤트 핸들러
});
});