HTML,javascriptを使ってリストの作成をしています。
動きとしては、
・+を押すとテキスト、カラー、OKボタンの表示・非表示
・OKボタンでテキストボックスで入力した内容がリストとして追加される
・学校を押すと追加されたリスト含め全てが表示・非表示
やりたいこと
カラーを選択し、OKを押した際に追加されるリストの丸○に選択した色がつくようにしたい。
html
1<ul> 2 <li onclick="clickBtn2()">学校</li> 3 <div id="school"><ul id="FavList"> 4 <script type="text/javascript" src="list.js"></script> 5 <input type="text" id="favtext" style="display:none;"> 6 <input type="color" id="choicecolor" style="display:none;"> 7 <input type="button" id="addurl" value="OK" onclick="bar();" style="display:none;"> 8 <input type="image" src="orangebutton.png" alt="追加1" onclick="clickBtn1()"> 9 </ul></div> 10</ul>
javascript
1//↓リストの追加オレンジ 2function bar() { 3 // a 要素の作成と属性の指定 4 var newAnchor = document.createElement("a"); 5 var newTxt = document.createTextNode( document.getElementById("favtext").value ); 6 newAnchor.appendChild( newTxt ); 7 newAnchor.setAttribute("target", "_blanc" ); 8 9 // li 要素の作成 10 var newLi = document.createElement("li"); 11 newLi.appendChild ( newAnchor ); 12 13 // リストに追加 14 var list = document.getElementById("FavList"); 15 list.appendChild( newLi ); 16} 17 18//↓オレンジボタン表示非表示 19//初期表示は非表示 20function clickBtn1(){ 21 const favtext = document.getElementById("favtext"); 22 const addurl = document.getElementById("addurl"); 23 const choicecolor = document.getElementById("choicecolor"); 24 25 if(favtext.style.display=="block"){ 26 // noneで非表示 27 favtext.style.display ="none"; 28 }else{ 29 // blockで表示 30 favtext.style.display ="block"; 31 } 32 33 if(addurl.style.display=="block"){ 34 // noneで非表示 35 addurl.style.display ="none"; 36 }else{ 37 // blockで表示 38 addurl.style.display ="block"; 39 } 40 41 if(choicecolor.style.display=="block"){ 42 // noneで非表示 43 choicecolor.style.display ="none"; 44 }else{ 45 // blockで表示 46 choicecolor.style.display ="block"; 47 } 48} 49 50 51//↓親要素表示非表示 52function clickBtn2(){ 53 const school = document.getElementById("school"); 54 55 if(school.style.display=="block"){ 56 // noneで非表示 57 school.style.display ="none"; 58 }else{ 59 // blockで表示 60 school.style.display ="block"; 61 } 62} 63 64 65//色適応 66var choicecolor = document.getElementById('choicecolor'); 67choicecolor.onchange = function () { 68 document.getElementById('FavList').style.backgroundColor = this.value; 69 console.log('choicecolor:'+this.value); 70} 71
回答3件
あなたの回答
tips
プレビュー