- ベストアンサー
要素を表示非表示するボタンを作成する方法
- 質問文章から要素を表示非表示するボタンを作成する方法について解説します。
- スクリプトを使用して、特定の要素に表示非表示のボタンを追加することができます。
- ただし、一部のブラウザでは表示非表示のボタンの位置や動作に問題がある場合があります。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
ちょっと、classでのしていは、まずいかぁ~。 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"> <title>test</title> <div class="abc tgt">TARGET1</div> <div class="tgt def">TARGET2</div> <div class="ghi tgt jkl">TARGET3</div> <script type="text/javascript"> var reg = new RegExp('\\b' + 'tgt' + '\\b'); function make () { var doc = document; var tmp = doc.getElementsByTagName("*"); var cnt, obj, tgt =[]; var p = doc.createElement('p'); var a = doc.createElement('a'); a.href = '#'; a.style.display = 'block'; a.name = 'tgt'; a.appendChild(doc.createTextNode("表示・非表示")); p.appendChild(a); for(cnt = 0; obj = tmp[cnt++]; ) reg.test(obj.className) && tgt.push(obj); for(cnt = 0; obj = tgt[cnt++]; ) obj.parentNode.insertBefore(p.cloneNode( true ), obj); } //@cc_on document./*@if (@_jscript)attachEvent('on'+ @else@*/addEventListener(/*@end@*/ 'click', function (evt) { var e = evt./*@if (@_jscript) srcElement @else@*/ target /*@end@*/; if ('A' === e.nodeName && 'tgt' === e.name) with(e.parentNode.nextSibling.style) display = display == 'none' ? 'block': 'none'; }, false); make(); </script> これとは、まったくちがうことなのだけど。 教えてgooで、みると、「このカテゴリで人気のQ&A」のいちらんに 「1つのformで複数のactionを実行できますか?」が、とっぷで くいこんでくるのはなぜ?とおもうのは、ばぶぅ~だけ? ということを、かいとうするたびに、つけてみようとおもう。^^;
その他の回答 (1)
- babu_baboo
- ベストアンサー率51% (268/525)
えぇ~と。 AllTag[]は、いきものだじょ。ついかするとふえるから、ずれるじょ。 var tmp = link.cloneNode(true); みたいにしないと、linkがふえつづけるじょ! ついかする<a>たぐようそは、いんらいんようそだから、ぶろっくようそで かこまないとだめだじょ! HTML5なら、いいのかもしれないけど(くわしくはふめい) <div memo="target">みたいにかってにmemoなんて つかっちゃだめかもよ?
補足
Oh、自己解決してからみてしまいました、私はID自動で振付ける方法で。 できれば使いたくなかったんだけど・・・ Siblingの挙動がIEと他で違うかったんですねぃ。 IEが.nextSiblingの所を他は.nextSibling.nextSiblingっていう風にニ連続にしないといけないみたいです。.previousSiblingも同じくです。 そしてそして、回答ありがとうございました~!