#contentsをプルダウンメニューで表示させる

バージョン全部
投稿者まん
状態完了
投稿日2008-11-19 (水) 10:20:16

メッセージ

意図としては、#contentは大変便利に使っていますが、表示量が膨大となり、それすらも視覚的にうっとうしくなってしまいました。 なのでプルダウンメニュー表示・選択からリンクできれば、スマートになるなかと思いました。

コメント

   function replace_contents($arr)
   {
       $contents = $this->contents->toString();
       $contents_pulldown  = '<div class="contents">' . "\n" .
               '<a id="contents_' . $this->id . '"></a>' . "\n" .
               '<select onChange="location.href=\'#\'+this.options[this.selectedIndex].value">' . "\n";
       $level = 0;
       foreach(explode("\n", $contents) as $line)
       {
           if (preg_match('/^<ul/', $line))
           {
               $level++;
               $line = substr($line ,65);//<ul class="list...margin-left:16px"><li>
           }
           else $line = substr($line, 4);//<li>
           if (preg_match("/^<a href=\"#(.+)\"> (.+) <\/a>/", $line, $match))
               $contents_pulldown  .= '<option value="' . $match[1] .
                                   '">'.str_repeat('-', $level-1) .
                                   $match[2]."</option>\n";
           $level -= preg_match("/<\/ul>/", $line);
       }
       $contents_pulldown  .= '</select>' . "\n" . '</div>' . "\n";
       return $contents_pulldown;
   }

トップ   編集 凍結 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2010-10-08 (金) 09:57:33
Site admin: PukiWiki Development Team

PukiWiki 1.5.4+ © 2001-2022 PukiWiki Development Team. Powered by PHP 5.6.40-0+deb8u12. HTML convert time: 0.296 sec.

OSDN