application.jsに以下のコードを記載したら、エラーが表示されました。
Uncaught TypeError: Cannot set property 'textContent' of null
application.self-4f8606506b46aeebe7a0ee4c9ec664d9624db8e62b80c4ec4fc47b886ab886e1.js?body=1:27 Uncaught TypeError: Cannot set property 'textContent' of null
at createText (application.self-4f8606506b46aeebe7a0ee4c9ec664d9624db8e62b80c4ec4fc47b886ab886e1.js?body=1:27)
p.textContent = '';✖️←が表示されています。
at application.self-4f8606506b46aeebe7a0ee4c9ec664d9624db8e62b80c4ec4fc47b886ab886e1.js?body=1:20
createText();
application.jsの中身
JS
1//= require jquery 2//= require rails-ujs 3//= require_tree . 4 5var p = document.getElementById('text'); 6 7//タイピングする文字列をここで用意しておく 8var textLists = [ 9 'Hello World', 10 'This is my App', 11 'How are you?', 12 'Hello Hello', 13 'I love JavaScript!', 14 'Good morning', 15 'I am Japanese', 16 'Let it be' 17]; 18var checkTexts = []; 19 20 21createText(); 22 23function createText() { 24 //文字列をランダムに取得する 25 var rnd = Math.floor(Math.random() * textLists.length); 26 27 //前の文字列を削除してから次の文字列を表示する 28 p.textContent = ''; 29 30 //文字列を1文字ずつに分解して、それぞれにspanタグを挿入する 31 checkTexts = textLists[rnd].split('').map(function(value) { 32 var span = document.createElement('span'); 33 34 span.textContent = value; 35 p.appendChild(span); 36 37 return span; 38 }); 39} 40 41document.addEventListener('keydown', keyDown); 42 43 44function keyDown(e) { 45 46 //キーボードからの入力は「e.key」に格納されている 47 if(e.key === checkTexts[0].textContent) { 48 checkTexts[0].className = 'add-blue'; 49 50 //0番目の配列要素を削除して、次の1文字を比較対象にする 51 checkTexts.shift(); 52 53 //配列要素が空っぽになったら次の問題を出す 54 if(!checkTexts.length) createText(); 55 } 56} 57
エラーの解決方法を教えていただきたいです。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/09/26 05:11
2020/09/26 05:13
2020/09/26 05:41
2020/09/26 06:19