動き
・オレンジプラス
→学校の中にある1限や3限などの項目を追加することができる。
→オレンジプラスボタンを押すとテキストボックス、カラーピッカー、追加ボタンの3つを表示・非表示できる。(デフォルトは非表示状態)
・ピンクプラス
→学校やプライベートなどの黒丸の項目を追加することができる。
したいこと
・ピンクプラスで追加ボタンを押した際にオレンジプラスボタンも一緒に追加されるようにしたい。
HTML
1 <script type="text/javascript" src="list.js"></script> 2 <!--リストの作成--> 3 <ul> 4 <li> 5 <label contentEditable="true">学校<input type="checkbox" onchange="clickBtn2(this.checked)" style="display: none;" checked></label> 6 <div id="school"> 7 <ul id="FavList"></ul> 8 <input type="text" id="favtext" style="display:none;"> 9 <input type="color" id="choicecolor" style="display:none;"> 10 <input type="button" id="addurl" value="追加" onclick="bar();" style="display:none;"> 11 <label> 12 <img src="プラスオレンジ.png"> 13 <input type="checkbox" style="display: none;" onchange="clickBtn1(this.checked)"> 14 </label> 15 </div> 16 </li> 17 </ul> 18 19 <ul id="pinkList"></ul> 20 <ul> 21 <input type="text" id="plustext" style="display:none;"> 22 <input type="button" id="oookkk" value="追加" onclick="bar2();" style="display:none;"> 23 <label> 24 <img src="プラスピンク.png"> 25 <input type="checkbox" style="display: none;" onchange="clickBtn3(this.checked)"> 26 </label> 27 </ul> 28 29 </div>
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 8 // li 要素の作成 9 var newLi = document.createElement("li"); 10 newLi.appendChild ( newAnchor ); 11 newLi.style.color = document.getElementById('choicecolor').value; //色適応 12 document.getElementById('FavList').contentEditable = true; //リストの編集 13 14 // リストに追加 15 var list = document.getElementById("FavList"); 16 list.appendChild( newLi ); 17} 18 19//↓オレンジボタン表示非表示 20//初期表示は非表示 21function clickBtn1(){ 22 const favtext = document.getElementById("favtext"); 23 const addurl = document.getElementById("addurl"); 24 const choicecolor = document.getElementById("choicecolor"); 25 26 if(favtext.style.display=="block"){ 27 // noneで非表示 28 favtext.style.display ="none"; 29 }else{ 30 // blockで表示 31 favtext.style.display ="block"; 32 } 33 34 if(addurl.style.display=="block"){ 35 // noneで非表示 36 addurl.style.display ="none"; 37 }else{ 38 // blockで表示 39 addurl.style.display ="block"; 40 } 41 42 if(choicecolor.style.display=="block"){ 43 // noneで非表示 44 choicecolor.style.display ="none"; 45 }else{ 46 // blockで表示 47 choicecolor.style.display ="block"; 48 } 49} 50 51 52//↓親要素表示非表示 53function clickBtn2(){ 54 const school = document.getElementById("school"); 55 56 if(school.style.display=="block"){ 57 // noneで非表示 58 school.style.display ="none"; 59 }else{ 60 // blockで表示 61 school.style.display ="block"; 62 } 63} 64 65//↓ピンクボタン表示非表示 66//初期表示は非表示 67function clickBtn3(){ 68 const plustext = document.getElementById("plustext"); 69 const oookkk = document.getElementById("oookkk"); 70 71 if(plustext.style.display=="block"){ 72 // noneで非表示 73 plustext.style.display ="none"; 74 }else{ 75 // blockで表示 76 plustext.style.display ="block"; 77 } 78 79 if(oookkk.style.display=="block"){ 80 // noneで非表示 81 oookkk.style.display ="none"; 82 }else{ 83 // blockで表示 84 oookkk.style.display ="block"; 85 } 86} 87 88//↓リストの追加ピンク 89function bar2() { 90 // a 要素の作成と属性の指定 91 var newAnchor = document.createElement("a"); 92 var newTxt = document.createTextNode( document.getElementById("plustext").value ); 93 newAnchor.appendChild( newTxt ); 94 95 // ul 要素の作成 96 var newLi = document.createElement("li"); 97 newLi.appendChild ( newAnchor ); 98 99 // リストに追加 100 var list = document.getElementById("pinkList"); 101 list.appendChild( newLi ); 102} 103
回答1件
あなたの回答
tips
プレビュー