• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:PukiWikiの左メニューでonMouseOverでサブメニューを開き、onMouseOutで閉じる。)

PukiWikiの左メニューを改造する方法

このQ&Aのポイント
  • PukiWikiの左メニューでサブメニューを開閉する方法について解説します。
  • PukiWikiPlusを使用している場合、左メニューの項目が増えると長くなってしまうことがあります。そこで、常に表示する必要のない項目を折りたたむ方法をご紹介します。
  • javascriptのプラグインを使用して、サブメニューをマウスオーバーで開き、マウスアウトで閉じるように調整することができます。具体的な手順やソースコードの一例を紹介します。

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

  • ベストアンサー
  • ANASTASIAK
  • ベストアンサー率19% (658/3306)
回答No.1

'rgn_summary1'と'rgn_content1'という違うオブジェクトを 操作するのはこれでいいんでしょうか。例示からはもう一つの オブジェクトIDの所在が見えないけれど。 あと、display:none;のオブジェクトにmouseoverイベントを 仕掛けても反応しないのでは?

Seeker_X
質問者

お礼

編集途中で送信してしまいました・・・。 上のソースはテーブルタグをやめてdivにして整理した状態です。先ほどstyle="display:none;"になっていたのは、ブラウザでソースを表示すると初期状態、つまり縮小表示している状態のソースを表示するからじゃないかと思っています。

Seeker_X
質問者

補足

cssとhtmlについては多少分かる物のjavascriptは勘だけでいじってるので正しく理解できているかわかりませんが恐らく、 ・rgn_summary1は縮小しているときに表示したいもの  Wikiでは"#region(skill)"の()内にあるもの ・rgn_content1はマウスを重ねたときに表示したいもの  Wikiでは"#region"と"#endregion"の間にあるもの // ■ 縮小表示しているときの表示内容。 function buildSummaryHtml(){ $summarystyle = ($this->isopened) ? "display:none;" : "display:block;"; return <<<EOD <div id=rgn_summary$this->callcount style="color:gray;$summarystyle" onMouseOver=" document.getElementById('rgn_summary$this->callcount').style.display='none'; document.getElementById('rgn_content$this->callcount').style.display='block'; ">$this->description </div> EOD; } // ■ 展開表示しているときの表示内容ヘッダ部分。ここの<td>の閉じタグは endregion 側にある。 function buildContentHtml(){ $contentstyle = ($this->isopened) ? "display:block;" : "display:none;"; return <<<EOD <div valign=top id=rgn_content$this->callcount style="$contentstyle" onMouseOut=" document.getElementById('rgn_summary$this->callcount').style.display='block'; document.getElementById('rgn_content$this->callcount').style.display='none'; "> EOD; }

関連するQ&A