JavaScript学習のまとめ4(DOM基礎)

3から続きます

1:DOM(Document Object Model)とは?

1:HTMLをJavaScriptから操作できるようにしたインターフェイス

2:JavaScriptからはDOM APIを通じてHTMLの情報を取得・変更します。

document.querySelectorを使う場合が多いらしい

3:情報の取得・変更・イベントの登録などができます。

例1

const ul = document.querySelector('ul')
undefined ul.style.color = 'red' "red"
const firstLi = ul.querySelector('li')
undefined firstLi.style.color = 'black' "black"

1: ul要素を取得

2: ulの文字色をすべて赤にして

3: ul.querySelector(‘li’)で初めのli要素を代入

4: 初めのli要素の色を黒にしている

const li = document.querySelectorAll('li')
 li[0].style.color = 'purple'
 li
NodeList(3)
 [li.item.item-1, li.item.item-2, li.item.item-3]
 li.forEach(node => node.style.color = 'purple');

1: li要素をすべて取得して

2:初めの要素をパープルにして

3:forEachを使ってループさせて全てに適用させている。

2:ボタンが押されたときhelloと出力する

HTML(bodyから)の記述

<body>
 <h1 id="main-title">JavaScriptの基礎</h1>
 <h2 class="sub-title">DOM(Document Object Model)に
イベントリスナーを登録してみよう。</h2>
 <button id="btn">Change Title Color</button>
 <script src="main.js"></script>
</body>

JavaScriptの記述

// ボタンの要素を取得
const btn = document.querySelector('#btn')
; // ボタンが押されたときhelloと出力する
btn.addEventListener('click', function() {
 alert('hello');
 });
// こっちの書き方のほうがbetter
const hello = function() { 
 alert('hello');
};
// クリックしたときに発火
btn.addEventListener('click',hello);
// こちらの書き方でもOK
 function hello() {
 alert('hello');
};

ボタンが押されたとき色を変更する

// ボタンの要素を取得
const btn = document.querySelector('#btn');
  btn.addEventListener('click',hello);
functionhello() { 
 this.style.color = 'red';
 console.log(this); 
};
// クリックしたときに発火
btn.addEventListener('click', hello);
// マウスオーバーしたときに発火する記述
// btn.addEventListener('mouseenter',hello);
const h1 = document.querySelector('h1');
  function changeColor() {
  h1.style.color = 'red';
}
function changeBgColor() {
  h1.style.backgroundColor = 'green';
}
function helloWorld(){
  alert('HelloWorld'); 
}
// addEventListenerを使うことで複数のイベントを追加できるよ 
btn.addEventListener('click', changeColor); 
btn.addEventListener('click', changeBgColor); 
// イベントリスナーを削除する(上を打ち消す) 
// btn.removeEventListener('click', changeBgColor);

ボタンを押す前

ボタンを押した後

 

テキストアニメーションに続く

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です