ç®ç
- ãŠãŒã¶ãŒã®å ¥åå€ååŸã衚瀺ãã§ããããã«ãªãã
ä»æ¥ããããš
- getElementByIdãaddEventListenerãinnerHTMLã«ã€ããŠç解ãæ·±ãã
- CSSã§ããŠã¹ãããŒãã»ã¬ã¯ã¿ãæ£ããéžæã§ããããã«ããã
ãŽãŒã«ã€ã¡ãŒãž
ããã¹ããšãªã¢ã«èªç¶æ°ãããããšãã«ãããããŒã«ã«æŸãããã
HTML
ãã®ãããªæãã§ã€ãã£ãŠã¿ãŸããã
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>ãã«ãã«ãã«ãã</title>
<link rel="stylesheet" href="gators.css">
</head>
<body>
<form action="javascript:void(0)" method="post">
<p>ãã«ããäœå¹æŸã€ïŒ</p>
<input type="text" id="number">
<input id = "id-submit" type="submit" value="Unleash gators">
</form>
<div>
<p id ="gatorPool" ></p>
</div>
<script src="gators.js"></script>
</body>
</html>
ç»é¢ãäžç¬æ¶ãããã ãã©ïŒïŒåèŠãã€ãã€æ¡ä»¶ïŒ
äžèšã®ãããªã³ãŒãã®å Žåãsubmitããç¬éã«action="#"ãåŒã°ããŠããŸãã
ããå°ã詳ãããããšã#ã¯ãã®ããŒãžã®æäžéšãæå³ããŠããã®ã§ã
index.htmlããªããŒãããããã®çµæäžç¬è¡šç€ºããããæçµçã«ã¯ãªãã¬ãã·ã¥ãããç»é¢ã衚瀺ãããã
...
<form action="#" method="post">
<p>ãã«ããäœå¹æŸã€ïŒ</p>
<input type="text" id="number">
<input id = "id-submit" type="submit" value="Unleash gators">
</form>
...
解決â action="javascript:void(0)"ãšããã
- void æŒç®åã¯åŒãè©äŸ¡ããè©äŸ¡ããçµæå¿ ã undefind å€ãè¿ããŸãã
- actionå€ã« undefind å€ãæå®ããå Žåã«ã¯äœãåäœããŸããã
解決⡠event.preventDefault()ãšãã
ãã©ãŠã¶ãæã€ããã©ã«ãã®åäœããã£ã³ã»ã«ããŸãã
- ãã©ãŒã éä¿¡ããŠéä¿¡å ã®ããŒãžã«é·ç§»ããåäœããã£ã³ã»ã«ãããŸãã
ã§ãããã©ãŠã¶ã®ããã©ã«ãã®åäœããã£ã³ã»ã«ãããªãéã«é¢åãããããªãã
ãã®èŸºãã®äœ¿ãåãã¯ãŸã ããã£ãŠããŸãããããããªããã
Javascript
ãã®ãããªæãã§ã€ãã£ãŠã¿ãŸããã
let sub = document.getElementById('id-submit')
sub.addEventListener("click", () => {
const numberOfGators = document.getElementById('number').value;
if (isNaN(numberOfGators)) {
alert('æ°åã®ã¿ãå
¥åããŠãã ãã');
}
if(numberOfGators<=0 || Number.isInteger(numberOfGators)){
alert('èªç¶æ°ã§å
¥åããŠãã ãã')
}
let addGators = "";
for (let i = 0; i < numberOfGators; i++) {
addGators += 'ð';
}
document.getElementById("gatorPool").innerHTML = addGators
})
ã«ã¯ãªãã¯ã€ãã³ããçºçããéã®åäœãäœãããã®äžã®åŠçãæžããŠãããŸãã
1:ã€ãã³ãçºç«ãããèšè¿°ãäœãããã«ã<input id="submit"...>
ãååŸ
2-1:ã€ãã³ãçºç«æã®åŠçãæžãïŒãŠãŒã¶ãŒã®å
¥åå€ãååŸ
2-2:ã€ãã³ãçºç«æã®åŠçãæžãïŒå€ã衚瀺
2-3:ã€ãã³ãçºç«æã®åŠçãæžãïŒãŠãŒã¶ãŒã«æ£ããå
¥åå€ãä¿ã
ãŠãŒã¶ãŒã®ã€ãã³ãçºç«æã®æäœãäœãã
ã€ãã³ãçºç«ã¯ãã¡ãã䜿ããŸãã
element.addEventListener(eventhadle,callback)
addEventListenerã¡ãœããã¯ãç¹å®ã®ã€ãã³ãã察象ã«é ä¿¡ããããã³ã«åŒã³åºãããé¢æ°ãèšå®ããŸãã 察象ãšããŠãããããã®ã¯ Element, Document, Window ã§ãããã€ãã³ãã«å¯Ÿå¿ãããããããªããžã§ã¯ãã察象ã«ãªãããšãã§ããŸã (XMLHttpRequestãªã©)ãåŒçšïŒMDN
ãŸããelement:ã€ãã³ãçºç«ããHTMLèŠçŽ ãååŸããŸãã
eventhandleïŒã©ã®ã€ãã³ãïŒãŠãŒã¶ãŒãWEBäžã§ã®ã¯ãªãã¯ãªã©ã®æäœïŒããããšãã«åå¿ãããã決ããŸããã€ãã³ããã³ãã©ã®äžèŠ§ã¯ãã¡ããåèã«ããŠã¿ãŠãã ããã
ã€ãã³ãçºç«ããHTMLèŠçŽ ãååŸ
ã€ãã³ãã¯<input id="submit"...>
ã§èµ·ããã®ã§ãçºç«ãããããã«HTMLãååŸããŸãã
HTMLã®ååŸã¯ãdocument.getElementById("")ã䜿ããŸãã
Document ã® getElementById() ã¡ãœããã¯ãid ããããã£ãæå®ãããæååã«äžèŽããèŠçŽ ãè¡šã Element ãªããžã§ã¯ããè¿ããŸããèŠçŽ ã® ID ã¯æå®ãããŠããã°åºæã§ããããšãæ±ããããŠãããããç¹å®ã®èŠçŽ ã«ãã°ããã¢ã¯ã»ã¹ããã«ã¯äŸ¿å©ãªæ¹æ³ã§ããåŒçšïŒMDN
let sub = document.getElementById('id-submit')
ãã®subã䜿ã£ãŠãã¯ãªãã¯ã€ãã³ãã§çºç«ããåŠçãæžããŸãã
let sub = document.getElementById('id-submit')
sub.addEventListener("click", () => {
ãã//ãã®äžã«ãclickãããšãã®åŠçãæžã
}
document.getElementByIdã®Nullã®å¯ŸåŠ
解決â ãIDåã¯ééã£ãŠããªãã
æå®ãããIDãèŠã€ãããªãã£ãå ŽåãNullãè¿ããŸãã
解決â¡ãHTMLãèŠãæã«ãJsãã¡ã€ã«ã§æ±ãHTMLã®åã«ãjsãã¡ã€ã«ãåŒã³èŸŒãã§ããªãã
JSãã¡ã€ã«ã¯çœ®ãããåãŸã§ã®HTMLèŠçŽ ãæ¢ãã®ã§ã
æå®ããIDã<script src="gatorsPool.js"></script>
ã®åŸãã«ããå ŽåãNullãè¿ããŸãã
<input id = "submit">
...
<script src="gatorsPool.js"></script> //subã¯<input id = "submit">
<script src="gatorsPool.js"></script> //subãNull
...
<input id = "submit">
ã
ã€ãã³ãçºç«æã®åŠçãæžã
ãŠãŒã¶ãŒå ¥åå€ã®ååŸ
ã¯ãªãã¯ã§çºç«ããé¢æ°ã¯äœããã®ã§ãçºç«æã®åŠçãæžããŠãããŸãããã
ãŠãŒã¶ãŒå
¥åå€ãååŸããã«ã¯ããã¡ãã䜿ããŸãã
document.getElementById('id').value
let sub = document.getElementById('id-submit')
sub.addEventListener("click", () => {
ã const numberOfGators = document.getElementById('number').value;
}
å ¥åå€ã«ãã£ãŠãã«ãæŸã€æ°ãå€æŽãããã®ã§ãå ¥åå€ã«å¿ãããã«ã®æååãäœããŸãã
let sub = document.getElementById('id-submit')
sub.addEventListener("click", () => {
ã const numberOfGators = document.getElementById('number').value;
ã let addGators = "";
for (let i = 0; i < numberOfGators; i++) {
addGators += 'ð';
}
}
å€ãåºåãã
å€ãHTMLã«åºåããã«ã¯ããã¡ãã䜿ããŸãã
element.innerHTML
ãã¡ããgetElementByIdãšåæ§ã«ãæžãæãããHTMLèŠçŽ ãå¿
èŠãªã®ã§ååŸããŠè²Œãä»ããŸãã
ä»åã¯ãsubã®ããã«åå²ããã«ãdocument.getElementByIdã§ååŸããHTMLèŠçŽ ãinnerHTMLã«æž¡ããŠããŸãã
let sub = document.getElementById('id-submit')
sub.addEventListener("click", () => {
const numberOfGators = document.getElementById('number').value;
let addGators = "";
for (let i = 0; i < numberOfGators; i++) {
addGators += 'ð';
}
document.getElementById("gatorPool").innerHTML = addGators
})
ãŠãŒã¶ã«æ£ããå ¥åãä¿ã
æ®ãã¯ãæ£ããå
¥åãä¿ãããã®æ¡ä»¶åå²ãèšèŒããŸãã
ïŒä»¥äžãè±æåã¯åŒŸããŸãããå°æ°ç¹ã«å¯Ÿå¿ã§ããŠããŸããðââïž
let sub = document.getElementById('id-submit')
sub.addEventListener("click", () => {
const numberOfGators = document.getElementById('number').value;
if (isNaN(numberOfGators)) {
alert('æ°åã®ã¿ãå
¥åããŠãã ãã');
}
if(numberOfGators<=0 || Number.isInteger(numberOfGators)){
alert('èªç¶æ°ã§å
¥åããŠãã ãã')
}
let addGators = "";
for (let i = 0; i < numberOfGators; i++) {
addGators += 'ð';
}
document.getElementById("gatorPool").innerHTML = addGators
})
ãã€ããããŸã§ãïŒ
Javascriptã¯ãã¡ãã§çµäºã§ãã
@vf8974ãããŸã«ããã¹ããŒããªæžãæ¹ãæããŠããã ããŸããïŒ
â ããŒãžé·ç§»ããªãå Žåã¯ãinputã§ã¯ãªããbuttonã䜿ããšGOOD
<form action="javascript:void(0)" method="post">
<p>ãã«ããäœå¹æŸã€ïŒ</p>
<input type="text" id="number">
<input id = "id-submit" type="submit" value="Unleash gators">
</form>
<form>
<p>ãã«ããäœå¹æŸã€ïŒ</p>
<input type="text" id="number">
<input id = "id-submit" type="button" value="Unleash gators">
</form>
â¡æååã®ç¹°ãè¿ãåŠçã¯ã str.repeat(count)ã䟿å©ïŒ
let addGators = "";
for (let i = 0; i < numberOfGators; i++) {
addGators += 'ð';
}
const addGators = 'ð'.repeat(numberOfGators);
ãããŒâšãšãŠãã·ã³ãã«ã§å¯èªæ§ãé«ãã§ãïŒ
CSS
ããŠã¹ã眮ããéã«è¡šç€ºãå€ãããå Žåã:hover
ã䜿ããŸãã
form {
/* display: flex; */
font-family:"æžžãŽã·ãã¯","YuGothic";
margin: 0 auto;
background-color:#6FB98F;
width: 200px;
height:200px;
text-align: center;
border-radius: 4px;
}
p{
padding:25px;
}
input{
font-family:"æžžãŽã·ãã¯","YuGothic";
background-color:seashell;
margin: 10px 0;
border-bottom: solid 4px salmon;
border-right: solid 4px sandybrown;
border-radius: 4px;
}
input#id-submit:hover{
font-family:"æžžãŽã·ãã¯","YuGothic";
background-color:snow;
border-right:none;
border-bottom: none;
transform: translate3d(0, 3px, 0);
border-radius: 4px;
}
div {
margin: 0 auto;
background-color:cornflowerblue;
width: 300px;
border-radius: 4px;
}
Tipsãèæ¯è²ãè§äžžã«ããŠãã©ã³ããå€ãããšããã ãã§ç»é¢ã«ãŸãšãŸããã§ãæ°ãããŸãã
èæ¯è²è§äžžããã©ã³ãå€æŽåŸ