team Project)
- 12월 중순-말일 팀선정
=> (최대 9명, 최소 3팀)- 일주일 1-2회 등원(팀원 미팅), 외 온라인 진행 예정.
addEventListner
: event 등록 methodevent 이름에 'on'이 없음.
하나의 element에 동일한 event를 여러개 등록 가능함.
=> ex) click event를 여러개 등록 가능함.
하나의 element에 다른 event를 여러개 등록 가능함.
removeEventListner("click", myFunction);을 통해 등록된 event 삭제 가능함.
<script>
document.getElementById("myBtn").addEventListener("click", displayDate, false);
document.getElementById("myBtn").addEventListener("click", displayHello, false);
function displayDate() {
document.getElementById("demo").innerHTML = Date();
}
function displayHello() {
document.getElementById("demo1").innerHTML = "hello, 2nd click!";
}
</script>
html document에 <p>궁시렁궁시렁</p>
이 있을 때, 웹브라우저 dev- tool(F12)에서 DOM view를 확인해보면 <p>
태그 안에 text
node가 있고 그 안에 궁시렁궁시렁
이 있음.
<p>
태그를 생성해 내용을 새로 입력해야할 때,
=> .createTextNode
로 텍스트 node를 생성해 내용을 담음.
<script>
const para = document.createElement("p");
// p태그 생성
const node = document.createTextNode("This is new paragraph.");
// text node 생성
para.appendChild(node);
// para에 node를 자식으로 붙임.(p태그 안에 text를 자식으로 붙임.)
const element = document.getElementById("div1");
// element를 #div1로 가져옴.
element.appendChild(para);
// element에 para를 자식으로 붙임.(#div1 안에 p태그를 자식으로 붙임.)
function myFunction() {
para.remove();
}
</script>
navigation Nodes는 노드의 관계로 위치를 찾는 것.
<p>궁시렁꿍시렁</p>
을 예로 들자면,
<p>
의 .firstChild
: .firstChild
는 text Node를 의미함.
<p>
의 .childNodes[i]
: <p>
의 i번째 Node인 text Node임.
-> nodes는 array(배열) 형식으로 작성됨.
.nodeValue
: 해당 Node의 value인 궁시렁꿍시렁
을 보여줌.
<h1 id="id01">My First Page</h1>
<p id="id02"></p>
<script>
// id01의 firstChild는 text이고 firstChild.nodeValue는 "My First Page"를 말함.
document.getElementById("id02").innerHTML =
document.getElementById("id01").firstChild.nodeValue;
document.getElementById("id01").childNodes[0].nodeValue;
</script>
<script>
document.getElementById("demo").innerHTML =
document.body.innerHTML;
// document의 body 내용을 innerHTML함.
// -> body의 내용이 #demo 위치에 dispaly됨.
</script>
window.innerWidth
window.innerHeight
<script>
document.getElementById("demo").innerHTML =
"Browser inner window width : " + window.innerWidth + "px<br>" +
"Browser inner window height : " + window.innerHeight + "px";
function myFunction() {
window.open("https://www.google.com/");
}
</script>
window.open(URL)
window.close()
<script>
let myWindow;
function openWin() {
myWindow = window.open("https://www.google.com/","","width=300,height=300");
// 윈도우를 300*300px 사이즈로 open함.
}
function closeWin() {
myWindow.close();
}
</script>
<script>
document.getElementById("demo").innerHTML =
"Screen width is " + screen.width;
</script>
loaction.herf
<script>
document.getElementById("demo").innerHTML =
"The full URL of this page is : <br>" + window.location.href;
</script>
<script>
function newGoogle() {
window.location.assign("http://www.google.com/")
window.location = ("http://www.google.com/")
}
</script>
<input type="button" value="<< Back" onclick="goBack()">
<input type="button" value="Forward >>" onclick="goForward()">
<script>
function goBack() {
window.history.back()
}
function goForward() {
window.history.forward()
}
</script>
<!-- 3초 뒤에 onclick myFunction() 효과. -->
<button onclick="myVar = setTimeout(myFunction, 3000);">Try it</button>
<button onclick="clearTimeout(myVar)">Stop it</button>
<script>
function myFunction() {
alert('Hello');
}
</script>
$(document)
=> object data type return하고 method인 ready()를 실행함.
.ready(callback Function)
: onload event를 의미함, event 발생시 parameter로 넘긴 callback함수 실행함.
$("p")
=> $("css selector사용")
, css selector에 해당하는 JS Object를 리턴함.
.click(callback Function)
: click event 발생할 때, callback Function 실행.
=> p.addEventListener(click, function(){});
비슷함.
=> $("p")
에 해당하는 모든 object들에 대하여 click event를 등록시켜 줌.
$(this)
=> this는 event가 발생한 p object를 의미함.
.hide()
=> display:none;
을 의미함.
<script>
$(document).ready(
function() {
$("p").click(
function() {
$(this).hide();
}
);
}
);
</script>