2004-12-03

Firefoxに続け--バージョン1.0公開が迫るモジラの電子メールソフト

Firefoxに続け–バージョン1.0公開が迫るモジラの電子メールソフト

from CNET Japan

あかんやろ。

Thunderbird は Firefox に比べると雑すぎる。中身を見たわけじゃないけど、1.0 までのペースが速すぎるし、かなり「かゆいところに手が届かない」シロモノなのは間違いない。まー自分は使ってるけど、とても Firefox 1.0 のようには他人に薦められない。少なくとも日本では POP before SMTP には対応してくれないとね。

FreeBSD Expert

FreeBSD Expert

2005.

買っておくかなぁ。

コンテンツの表示を ON/OFF

なんか思ったより簡単だった。

  • ID 属性で要素を特定
  • これを DOM オブジェクトとして JavaScript で持つ
  • .style.display を block にしたり none にしたり

するだけ。今回は block 要素しか ON/OFF しなかったのと、visibility でいじると IE, Opera で table に対して継承されないので。その代わり HTML の方が ID 属性細かく入りまくりになるけどこれはしゃーない。汎用の Event オブジェクトから始めるとまた実装の違いを気にする必要があれこれ出てきて面倒なので今回は見送り。できあがりは以下の通り。

// 指定コンテンツの表示を ON/OFF する
function toggle_visibility( id ) {
    var obj = document.getElementById( id );
    var self = document.getElementById( 'switch_' + id );

    if ( obj.style.display != 'none' ) {
        obj.style.display = 'none';
        set_textnode_value( self, '+' );
    } else {
        obj.style.display = 'block';
        set_textnode_value( self, '−' );
    }
}

// 指定要素の textnode を value にする
function set_textnode_value( obj, val ) {
    var ret = 0;
    var i   = 0;
    for ( i = 0; i < obj.childNodes.length ; i++ ) {
        // textNode は nodeType == 3 で判別
        if ( obj.childNodes[i].nodeType == 3 ) {
            obj.childNodes[i].nodeValue = val;
            ret = 1;
            break;
        }
    }
    return ret;
}

これをトグルさせるときにクリックする HTML の要素は

<a href="javascript:void(0)"
   id="switch_element"
   onclick="toggle_visibility( 'id' );"
   style="border: 1px solid;">−</a>

こんな感じ。表示を切り替える要素は

<div id="element">

...

</div>

こんな風にして囲んでおく。

  • ON/OFF したい要素の ID を X とすると
  • ON/OFF させるための要素の ID を switch_X とする

ルールにしときました。

+と−の文字を使って今コンテンツが表示されているかの状態を示しているのは、見出しの前に置いて中身が折りたたまれているかどうかを分かるようにするため。ま、よくあるやつです。全角うぜーと思ったら適当に書き換えるよろし。

Mozilla の JavaScript コンソールがあると楽だなぁ。

言われてみれば当たり前でも言われるまで気づかないことは案外多い

作れる、作る、作った (textfile.org)

元ネタは高林さんなんだけど、結城さんの感想を含めて。

例え当たり前のことでも形にするのは案外に難しい、とワタシは常に感じています。これはワタシのデキがよくないということもおおいに意味するわけですが、日本語でもシステムでも同じじゃないかと感じています。

あ。

形にすることに対する障壁を取り除くシステムやノウハウを自分が持っている(あるいは作れる)のなら、それを表に出して行きたい、これが自分が Web 上にだらだらとモノを書き連ねたり、システム管理的なことにどうしても手を染めてしまったりする一つの出発点なのかも。

本屋に行って、、、

手元にずいぶん前にもらった図書券があったので FreeBSD Expert 2005 を目指して出かけた。、、、んだけど、パラパラと眺めているうちにうーん、と唸る。ぶらぶらと巡っていたんだけど、どうも最近読みたい本がないらしい。

散々迷った挙げ句買ったのは『増補改訂版 Java言語で学ぶデザインパターン入門』。とりあえず積んどく。テストとか設計の本にも興味あるし哲学的な本にも興味あるんだけど、最近全然食指が動かないのはなんでかな。

About

例によって個人のなんちゃらです