JavaScript part.4
(DOM, Event)
document.body.innerHTML = '내용 다 바꿈';
document.body.h1.innerHTML = '내용 다 바꿈';
index.js
에 아래의 내용을 순서대로 구현해 보자면?🙄
const p = document.createElement("p");
const h1= document.querySelector("h1");
p.className-"dom";
p.innerHTML ="DOM";
h1.appendChild(p);
*여러 이벤트가 있지만 크게 아래 이벤트 종류가 있다고 생각하면 된다*
- 클릭 이벤트
*click
*dblclick
- 마우스 이벤트
*mouseover
*mousedown
*mouseenter
*mousemove
*moustout
*mouseup
- 스크롤 이벤트
*wheel
- 터치 이벤트
- resize(화면 크기 변화) 이벤트 등등
요소.addEventListener(이벤트종류, function() {
//이벤트가 일어났을 때 실행할 내용
});
const button = document.querySelector('.login-btn');
//classname이 login-btn 인 요소를 select 한뒤;
button.addEventListner ("click" , function () {
const password= document.querySelector('.password').value;
const rePassword = document.querySelector('.rePassword').value;
/*password 와 rePassword로 class 값을준 각각의 input 요소의
value를 통해 value 값을 가져와 변수에 저장해줌 */
if (!password) {
alert("비밀번호를 입력해주세요!");
return; //password값이 false라는 것은 값이 없다는것, 그럼 경고!
}
if (!rePassword) {
alert("비밀번호 확인을 입력해주세요!");
return;
}
if (password !== rePassword) {
alert("비밀번호가 맞지 않습니다");
return;
}
키보드를 눌렀을때 발생하는 이벤트
예를 들어 로그인 버튼을 클릭하지 않고 엔터키를 치는 것만으로 로그인과 같게 되는 기능 같은 걸 사용할때
쓰인다
const enter = document.querySelector('login-btn');
enter.addEventListner('keydown', function (e) {
if (e.keyCode == 13) {
login(); //13 키코드는 enter 키를 의미한다
}
input#re-password에 keyup 이벤트를 추가
이벤트가 발생하면 실행될 함수에 아래의 기능을 추가
input#password 와 input#re-password의 value 속성을 통해 input에 작성된 값을 가져오고,서로 같은지 아닌지 확인해서 같지 않다면 p 태그의 .alert 클래스에 "비밀번호가 일치하지 않습니다" 라는 문구를 넣어주고 서로 비밀번호가 같다면 "" 빈 문구를 넣기
const password = document.querySelector('.password');
const rePassword = document.querySelector('.rePassword');
const alert=document.querySelector('p.alert');
rePassword.addEventListener ("keyup", function () {
const passVal = password.value;
const rePassVal = rePassword.value;
if (passVal !== rePassval) {
alert.innerHTML = "비밀번호가 일치하지 않습니다";
}
else {
alert.innerHTML ="";
}
});