ここ数日、うららかな日が続いている。春が来たなあという感じだ。今日は下手をすると暑いぐらいの陽気だ。この言葉はここフランス中部の田舎にも当てはまるのだろうか。昨年インドおばちゃんのお見舞。いつものように名前の不明。インドおばちゃんは、先週、私と同じような腹の手術で入院していた。(0)2004-03-17妥当な概要の文字数は?「概要の文字数」を2文字(つまり2単語)にしていた私も、今回の仕様変更に合わせて再設定することにしました。(やっと半角スペースが使える〜(^^。)デフォルトは40文字となるようです。40文字では少し短いかも。「あそびや」では80文字としてみました。日本語では何文字が妥当なんでしょうね......。すごく単純化して考えてみると、英語では一単語が平均4文字程度、空白を入れると5文字程度ですから、「概要の単語数」40というのは「概要の文字数」200にあたります。全角・半角で考えると日本語は文字幅が倍ほど必要ですから「概要の文字数」は100ということになりますし、プロポーショナルフォントならもっと多くなりますね。見た目の長さだけで考えると100文字以上ということになります。そもそも何故Typepadが「概要の単語数」のデフォルトを40単語にしたのかという理由が不明なので、それを起点に考えるのは問題がありますが。いうことで、「概要」がトラックバックに適用されるということも考えて、慎み深い国民の一人である私は(笑)80文字ということにしておこうかな。結局、Tigerさんと同じ(Tigerさん、いつもお世話になります〜(^^)。日本語では何文字が妥当なのかは、しばらく運用されてみないとわからないという結論でしょうか(^^;。ココログベーシックでは、「概要」は概要じゃないところも気になったり。この版はもうメンテしていません。きの版をご利用ください。状態保持機能をOFF(*)にすれば、同じ動作になりますので。こんなの↓も作ってみました。サイドバー折り畳み2:状態保持機能付き----前回から随分と間が開いてしまいましたが、とりあえずサイドバー折り畳みスクリプトの第二弾を暫定公開します。サイドバーにある任意の(h2要素をもつ)コンテンツにスイッチボタンを付け、折り畳みができるようになります。折り畳むか展開したままにするかといった初期状態も選べます。今回の変更点は、以下のような感じです。9.2)]で動作を確認しました。(h2要素のスタイル指定がうまく反映されていなかったり、Opera7.23でスイッチがボタンじゃなく小さくなったりしてますが、動作自体は問題ないようです。10.3]でも動いているそうです。Konquerorでは、相変わらずボタンさえでてきてくれません(どうもスクリプト本体最初の方にあるdocument.getElementsByTagName("H2").lengthが0になってしまっていて、それ以降の処理が全くできていない様子)。設置は、マイリストです。テキスト表示に設定した任意のマイリストのメモ欄に、以下のスクリプトをコピー&ペーストし、ご自分の好みやテンプレートに合わせて適宜カスタマイズしてください。2004-05-09)このスクリプトは、設置したマイリストより(HTML的に)前にあるコンテンツしか折り畳むことができません。最後の方に設置してください。読み込みが遅い項目の後に設置してしまうと使いづらくなってしまうことがありますので、読み込みが遅いコンテンツの前後に分けて呼び出しスクリプトを設置することで対応できるようにしています。詳しくは、後述の動作遅延対策を御参照ください。2004-06-19)上記のswitchStyleの部分が間違っていたので修正しました。一つめのpatternで折り畳みスイッチを設置する箇所を指定し、二つめのpatternでページ読み込み時に折り畳み状態にしたい箇所を指定、三つめのpatternでリスト項目の数を数えたい箇所をします。patternは、コンテンツの名前(もしくはその一部)を半角縦棒(|)で区切って指定します。patternの行を記述しないと、この呼び出しスクリプトを埋め込んだマイリストより前にある、H2要素をもつコンテンツ全てにスイッチがついたり折り畳まれたりします。設置自体は以上で完了です。リストの名前がコメントアウトされたマイリストは、折り畳み対象外になっています。「カレンダー」という文字を含むリスト名(例えば「今月のカレンダー」)をもつマイリストを創ってカレンダーの直前に配置し、上記のようにpatternにカレンダーを含めることで、カレンダーも折り畳めるようになります。カスタマイズ上記の呼び出しスクリプトは、今わたしが使っているTypepad風テンプレートに合わせてスタイルを調整してあります。折り畳みスイッチを小さくして正方形にしたり、右寄せしたり、下線の表示を状態のスイッチに伴って変化させたりしてます。テンプレートによっては不具合があるかも知れませんので、適当にいじってカスタマイズしてください。カスタマイズ方法は二つです。一つ目は、上記の呼び出しスクリプトのpattern以外の変数を調整する方法です。変数switch...は、スイッチボタン(button要素/.switch)に対する指定、label...は文字の部分(「最近の記事」など。label要素/.switch-label)に対する指定、heading...はそれらを包含している見出し要素(h2要素)に対する指定です。ついでに折り畳みスイッチの記号(+/-)もカスタマイズできるようにしておきました。2004-03-16)リスト名の部分(h2)のスタイルを定義していた下記の3行は当面はずすことにしました。初期状態でのスタイルの反映がうまくいかないためです。"border:none;";また、counter...が項目数を数える部分の指定で、Prefixが前置記号、Postfixが後置記号、StyleがCSSです。countBroadlyというのは、li要素を持たないコンテンツ(メールを送信、XML連携、ブックマークに加える等々)を折り畳んだ場合に、それらを数えるかどうかの指定で、trueにすると数え、falseにすると数えません。true;の行もはずすことにしました。(^^;二つ目はstylesheet(styles.cssなど)に手を加える方法ですが、この方法を使うためには、上記の...Style...という文字が含まれる変数の行を消去してからCSSに下記のような感じで追加してください(確認してませんが、たぶんそれでOKだと思います)。こちらは、スイッチ記号や項目数前後の記号の変更や、コメントアウトされたコンテンツ見出しのスタイル変更などには対応していません。前回の折り畳みスクリプトでは、読み込みに時間がかかるコンテンツの後に呼び出しスクリプトを置くと、ページを読んだ時しばらくしてからパタパタと折り畳まれてしまい、せっかくクリックしようとしたリスト項目が消えてなくなってしまってハラダタシイことがありました。そこで、今回は、そういう遅延の原因となっているコンテンツの前後に分割して呼び出しスクリプトを配置できるようにしました。私のサイトの場合、最初の呼び出しスクリプトが上記のような感じになっていて、最後の方でもう一度、下記のような呼び出しスクリプトを書いています。予想外のものまで折り畳んでしまうことがあるかもしれませんが、その場合は、折り畳みたくないコンテンツの直前にダミーのマイリストを配置してみてください。これは、カレンダーなどのH2要素を持たないコンテンツも折り畳めるようにしたかったので、「次にH2要素が現れるまでの全てを折り畳み対象とする」という仕様にしたためです。補足myFunctions.jsというスクリプトの呼び出しは部分は、foldSidebar02a.jsを呼び出すより前であればどこに設置してもOKです。myFunctions.jsは、私のスクリプトで何度も使いそうな関数を抜き出してみたものです。今回はこれを改良することでIE6でもCSSがうまく反映されるようになったんですが、まだまだ改良の余地がありそうです。外部スクリプト本体(foldSidebar02a.js)は、ダウンロードして改変し、ご自分のサイトにアップロードして使っていただいても結構です。ダウンロードせずに呼び出しスクリプトだけを使用していただいても結構です。後者の方が設置は楽ですが、もしかしたら私がファイルを修正したり、このココログが消えてしまったりすることもないとは言えませんので、その点はあらかじめ御承知ください。----不具合などの情報やご意見、ご感想はいつでも募集中&大歓迎です。折り畳みスクリプトの改良にイキヅマッテいたので、関連リンク一覧を作ってみました。折り畳みスクリプト関連リンク一覧いただいたTBやコメント、折り畳み|折りたたみで検索してみた結果などから列挙してあります。洩れているリンク先もあるかと思いますので、御一報いただければ幸いです。今回のリストはスクリプトの改良のために今後も継続的に更新していきたいと思っていますので、もし何かありましたら情報などお寄せいただけると幸いです。