[JS]バニラJavaScript-切り替え
8374 ワード
<入る前に>
Javascript Part Threeビデオの3.8 CSSを表示および学習します.
記録された内容.
クリックすると文字の色が2になります
toggle
質問:フォントを追加したh 1にフォントを保持し、クリック活動もできます!
理解:
classListではclassリストを使用できます
classNameは、以前のcalssにかかわらず、すべてのものを置き換えます.
classListでは、HTML要素のクラスコンテンツを操作できます.
containsは、指定したclassがHTML要素のclassに含まれているかどうかを示します.
タグが存在する場合、スイッチ関数はタグを削除します
トークンがない場合は、トークンを追加します.
LIKEスマートフォンの右ボタンと同じです.(画面開閉機能)
ex)
あれば
class nameが存在しない場合、
すぐに切り替えがいい
->存在する場合はスイッチを削除し、存在しない場合はスイッチを追加します.
Javascript Part Threeビデオの3.8 CSSを表示および学習します.
記録された内容.
クリックすると文字の色が2になります
/*3.6 CSS in Javascript*/
const h1 = document.querySelector(".hello h1");
function handleTitleClick(){
const currentColor = h1.style.color;
let newColor;
if(currentColor ==="blue") {
newColor = "tomato";
} else {
newColor = "blue";
}
h1.style.color = newColor; //맘에 안드는 코드 css 코드이기 때문
}
h1.addEventListener("click", handleTitleClick);
より良いコードに置き換える/*3.6 CSS in Javascript*/
const h1 = document.querySelector(".hello h1");
function handleTitleClick(){
const clickedClass = "clicked"; //string을 변수에 저장하면 오류가 떠도 에러를 잡아준다.
if (h1.className === clickedClass) {
h1.className = "";
} else {
h1.className = clickedClass;
}
}
// title에 click 이벤트가 발생하면 handleTitleClick 함수가 동작되길 원해!
h1.addEventListener("click", handleTitleClick);
h1.addEventListener("click", handleTitleClick);
cssにのみスタイルが加わったため,より簡潔なコードとなった.body {
background-color: rgb(255, 233, 199);
}
h1 {
color : cornflowerblue;
transition: color .5s ease-in-out;
}
.clicked {
color: tomato;
}
toggle
質問:フォントを追加したh 1にフォントを保持し、クリック活動もできます!
理解:
classListではclassリストを使用できます
classNameは、以前のcalssにかかわらず、すべてのものを置き換えます.
classListでは、HTML要素のクラスコンテンツを操作できます.
containsは、指定したclassがHTML要素のclassに含まれているかどうかを示します.
タグが存在する場合、スイッチ関数はタグを削除します
トークンがない場合は、トークンを追加します.
LIKEスマートフォンの右ボタンと同じです.(画面開閉機能)
ex)
toggle
h 1のclassList
でclickedが既に存在することを確認し、あれば
toggle
clickedを外しますclass nameが存在しない場合、
toggle
はclass nameを追加します.const clickedClass = "clicked";
if(h1.classList.contains(clickedClass)){
h1.classList.remove(clickedClass);
} else {
h1.classList.add(clickedClass);
}
上のコードは下の切り替えコードと同じです.すぐに切り替えがいい
h1.classList.toggle("clicked");
英文摘要:If forceは指定されていません.「切替」token、存在する場合は削除し、存在しない場合は追加します.If force is true, adds token->存在する場合はスイッチを削除し、存在しない場合はスイッチを追加します.
Reference
この問題について([JS]バニラJavaScript-切り替え), 我々は、より多くの情報をここで見つけました https://velog.io/@choi46910/JS-바닐라-스크립트-2テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol