• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:要素の表示/非表示の実験)

要素の表示/非表示の実験

このQ&Aのポイント
  • 要素の表示/非表示の実験をしてみました。最初のボタンは単に表示するかどうかだけで位置は消えた場所に詰められません。次のボタンは消えるとその場所に他の要素が詰められます。しかし消えたものは次にボタンを押しても消えたままです。消えた場所に要素が詰められしかも再表示できるようにするにはどうしたらいいのでしょうか?
  • 要素の表示/非表示の実験をしてみました。ボタンを押すと要素が非表示になり、その場所に他の要素が詰められます。しかし、再びボタンを押しても要素は非表示のままです。どうすれば消えた場所に要素が詰められて、再表示できるようになるでしょうか?
  • 要素の表示/非表示の実験を行いました。最初のボタンを押すと要素が非表示になり、次のボタンを押すと要素が表示されます。しかし、再び最初のボタンを押しても要素は表示されません。要素が非表示のままでありながら、再度表示させることは可能でしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.1

>if(y!='none') が if(x!='none') の間違いだと思う。 あと、 else document.getElementById('y').style.display='block'; より else document.getElementById('y').style.display=''; の方が良いと思う。

reiman
質問者

お礼

失礼しました。 以下でできました。 <input type="button" onclick="f()" value="push"/> <input type="button" onclick="g()" value="push"/> <table> <tr><td>a</td><td>b</td><td>c</td></tr> <tr id="x"><td>x</td><td>y</td><td>z</td></tr> <tr><td>u</td><td>v</td><td>w</td></tr> <tr id="y"><td>x</td><td>y</td><td>z</td></tr> <tr><td>a</td><td>b</td><td>c</td></tr> </table> <script> function f() { var x=document.getElementById('x'); if(x.style.visibility=='hidden') x.style.visibility='visible'; else x.style.visibility='hidden'; } function g() { var x=document.getElementById('y'); if(x.style.display!='none') x.style.display='none'; else x.style.display='inline'; } </script>

reiman
質問者

補足

またまた失礼しました。 'inline'->''ですね。 <input type="button" onclick="f()" value="push"/> <input type="button" onclick="g()" value="push"/> <table> <tr><td>a</td><td>b</td><td>c</td></tr> <tr id="x"><td>x</td><td>y</td><td>z</td></tr> <tr><td>u</td><td>v</td><td>w</td></tr> <tr id="y"><td>x</td><td>y</td><td>z</td></tr> <tr><td>a</td><td>b</td><td>c</td></tr> </table> <script> function f() { var x=document.getElementById('x'); if(x.style.visibility=='hidden') x.style.visibility='visible'; else x.style.visibility='hidden'; } function g() { var x=document.getElementById('y'); if(x.style.display!='none') x.style.display='none'; else x.style.display=''; } </script>

関連するQ&A

専門家に質問してみよう