気になっていることや素朴な疑問など、自由に討論する場にしたいと思います。よろしくお願いします。このコーナーの通知メール設定を「すべて」にすると、新しい書き込みがメールで通知されますので、この機能を是非使ってみてください。
投稿:竹形 誠司[takegata]/2007年 04月 03日 23時 54分
/更新:2007年 04月 04日 00時 00分
JavaScript で並べかえ?
by KILROY[KILROY]
ワタシは正直 JavaScript が嫌いだ。
型なしなのが厭だし、変数スコープが甘いのが厭だ。リンクの代用として「画像をクリックされたら JavaScript で指定した URL にジャンプ」みたいなことをしているコードでブラウザの「戻る」ボタンが正常に作動しなくなり、散々悩まされた体験もある。
だけど、「これはたぶん JavaScript でやるのが正解だろうな」と思うものが二つある。一つは商用アプリケーションでもおなじみの入力アシスト、もう一つはあまり行なわれているのを見たことがない「項目の並べかえ」だ。
たとえば、一覧表のようなものがあって、ユーザがこの項目の順番を指定したい場合があるとする。いちばん単純なインタフェースとしては、「挿入点を指定し、項目をクリックすると、その場でその項目が移動する」というものだと思うのだけれど、それを HTML のみを使った Web アプリケーションで普通にやろうとすると無理がある。ラジオボタンと項目数分のボタンで簡単に実装はできるだろうけれど、いちいち画面の再表示が起きて、かなり鬱陶しいことになりそうだ。
この部分を JavaScript で実装したらけっこう使い勝手のいいインタフェースが組めるように思う。……が、残念ながらどう実装したらいいか今のところ見当がつかない。
昨今 Ajax も流行っているようなので JavaScript も真面目に勉強しなきゃいかんだろうなぁ、と思っていたのだけれど、冒頭に挙げたような理由で(「嫌い」っていうのが理由になるか、という問題はある)いままで避けていた。 Java Applet で何とかならないかとか、 Flash は使えないかとか、いろいろ考えたけれど結局結論が出なかった。
そんな訳で「やっぱりちゃんと JavaScript 勉強しないとダメかな?」と思って DOM の勉強から始めているのだけれど、「日暮れて道遠し」である。
「こうやればできそう」「これでうまくいった」とかいった情報があったら教えてください。よろしく。m(_ _)m
型なしなのが厭だし、変数スコープが甘いのが厭だ。リンクの代用として「画像をクリックされたら JavaScript で指定した URL にジャンプ」みたいなことをしているコードでブラウザの「戻る」ボタンが正常に作動しなくなり、散々悩まされた体験もある。
だけど、「これはたぶん JavaScript でやるのが正解だろうな」と思うものが二つある。一つは商用アプリケーションでもおなじみの入力アシスト、もう一つはあまり行なわれているのを見たことがない「項目の並べかえ」だ。
たとえば、一覧表のようなものがあって、ユーザがこの項目の順番を指定したい場合があるとする。いちばん単純なインタフェースとしては、「挿入点を指定し、項目をクリックすると、その場でその項目が移動する」というものだと思うのだけれど、それを HTML のみを使った Web アプリケーションで普通にやろうとすると無理がある。ラジオボタンと項目数分のボタンで簡単に実装はできるだろうけれど、いちいち画面の再表示が起きて、かなり鬱陶しいことになりそうだ。
この部分を JavaScript で実装したらけっこう使い勝手のいいインタフェースが組めるように思う。……が、残念ながらどう実装したらいいか今のところ見当がつかない。
昨今 Ajax も流行っているようなので JavaScript も真面目に勉強しなきゃいかんだろうなぁ、と思っていたのだけれど、冒頭に挙げたような理由で(「嫌い」っていうのが理由になるか、という問題はある)いままで避けていた。 Java Applet で何とかならないかとか、 Flash は使えないかとか、いろいろ考えたけれど結局結論が出なかった。
そんな訳で「やっぱりちゃんと JavaScript 勉強しないとダメかな?」と思って DOM の勉強から始めているのだけれど、「日暮れて道遠し」である。
「こうやればできそう」「これでうまくいった」とかいった情報があったら教えてください。よろしく。m(_ _)m
投稿:KILROY[KILROY]/2007年 04月 04日 11時 00分
/更新:2007年 04月 04日 11時 00分
JavaScriptが嫌いな理由は激しく同意します。Ajaxもやらなきゃいかんだろうなぁというのも同感です。
で、こんなのどうですか?
http://jamy.to/web/javascript/test1.html
で、こんなのどうですか?
http://jamy.to/web/javascript/test1.html
投稿:竹形 誠司[takegata]/2007年 04月 05日 03時 37分
/更新:2007年 04月 05日 03時 46分
ありがとうございます m(_ _)m
なんとなく糸口がつかめてきました。
問題はむしろ私自身のほうにあって、「ブラウザが持ってる言語処理系ってどの程度頼りになるんだろう」っていう不安感というか、「どの程度重い処理を任せられるんだろうか?」「各ブラウザの共通性にどこまで期待できるんだろうか?」っていう評価が、現在(たとえばベンチマークテストとかいった形では)明らかにされていないことに対する不信感があるんですよ。
そう、だったらベンチマーク用のページを書きゃあいいんですよね。(^_^)b
頑張ろうと思います。
なんとなく糸口がつかめてきました。
問題はむしろ私自身のほうにあって、「ブラウザが持ってる言語処理系ってどの程度頼りになるんだろう」っていう不安感というか、「どの程度重い処理を任せられるんだろうか?」「各ブラウザの共通性にどこまで期待できるんだろうか?」っていう評価が、現在(たとえばベンチマークテストとかいった形では)明らかにされていないことに対する不信感があるんですよ。
そう、だったらベンチマーク用のページを書きゃあいいんですよね。(^_^)b
頑張ろうと思います。
投稿:KILROY[KILROY]/2007年 04月 05日 22時 14分
/更新:2007年 04月 05日 22時 14分