TOPシステム開発【見やすさと使いやすさ】ガラリと変わる!UI入門> 第3回:フォームのユーザビリティを改善する (3/3)




【見やすさと使いやすさ】ガラリと変わる!UI入門

【見やすさと使いやすさ】ガラリと変わる!UI入門

第3回:フォームのユーザビリティを改善する

著者:三宅 涼

公開日:2008/9/16(火)

はてなブックマークの登録数

JavaScriptを使ったTips
 最後に、JavaScriptを使ったTipsを紹介します。

 まずは「ページを開いた時の自動フォーカス」です。

 会員制のサービスのログイン画面など、一定の操作を前提とした画面ではユーザーが最初に入力するであろう要素にフォーカスすると便利です。ページが読み込まれた時点で、その要素をfocus()するだけなので実装は簡単です。

 サンプルとして、通常のJavaScriptとjQueryを使用した場合の2つを図3-1に示します。どちらも「usernameというIDが設定されたフォーム要素にフォーカスする」という動作をします。この程度であれば通常のJavaScriptのみで記述してもシンプルに書けますが、window.onloadにほかのイベントが設定されていた場合、既存の内容を上書きしてしまいます。

 もちろん回避策はありますが、jQueryを始め多くのJavaScriptライブラリはイベント登録に便利な機構を備えています。ブラウザ間の互換性を自力で吸収するよりも効率的なだけでなく、結局はその方がメンテナンス性も高くなることが多いので、ライブラリの利用をお勧めします。

 次は「二重submit防止」です。

 単純な操作ミスや「押せてないと思った」「遅いから念のため」などの理由で、送信ボタンが複数回クリックされることがあります。

 こういった場合にどのような応答を返すかはシステム次第ですが、基本的には二重送信というのは好ましくない事態のはずです。ユーザーにとって思わぬ結果を招いたり、エラー表示を引き起こすことが多いでしょう。

 こういう時には、JavaScriptを使ってそもそも二重クリックが発生しないようにすると効果的です。

 この対策の基本は、フォームのsubmit時に送信ボタンのdisabled属性を有効にすることです。ただし、それだけではブラウザの「戻る」や「中止」の操作をした時に、送信ボタンが押せない状態のままになってしまうという問題が発生します。

 これを解決するには、下記の処理が必要です。

・ページ読み込み時にdisabledを外す
・setTimeout()を用いて一定時間でdisabledを解除する

 jQueryを用いたサンプルの場合、ページの読み込み時にすべての送信ボタン(画像も)のdisabledを外しています。あらかじめdisabledにしたいボタンがある場合は、適宜改変してください(図3-2)。
図3:「ページを開いた時の自動フォーカス」と「二重submit防止」

ふりがなの自動入力
 これもJavaScriptによるフォームの改善技術なのですが、この機能はほかの2つに比べて複雑な内容になります。

 フォームに入力したテキストのふりがなを、自動で別のボックスに入力してくれるライブラリが少し前に公開され、話題になりました(フォームのふりがなを自動入力させるAutoRuby.js)。

 携帯電話のアドレス帳登録では一般的な機能ですが、Web上ではこういった機能は筆者が知る限り、注目されてきませんでした。

 「autoRuby.jsをDISってみる - Rubricks Project」や「event式autoKana.jsの紹介 : tech.kayac.com」など別の実装も公開されており、こうした機能は今後より普及が進むのではないかと思われます。

 今回紹介したTipsは小さなことかも知れません。しかし、一見地味に見えることを、丁寧に積み重ねていくことこそが最終的なユーザーの満足度を大きく左右すると筆者は考えています。

 次回は、サーバサイドからフォームのユーザビリティを改善する方法を探りつつ、システム開発とユーザビリティの関係について考えたいと思います。 タイトルへ戻る



三宅 涼
著者プロフィール
三宅 涼
1978年生まれ、京都出身。ウノウ株式会社などを経て、現在はフリーランスとして活動中。「選択も集中もせず」を信条に、サーバ構築・アプリ開発からデザインまで一人で日々奮闘中。
ブログ:Lism.in * blog(http://d.hatena.ne.jp/studio-m/

この記事の評価をお聞かせください
ボタンをクリックしますとウインドウが開きます。
ご意見、ご要望にお応えします! インプレスIT INSIDE


INDEX
第3回:フォームのユーザビリティを改善する
  フォームの重要性
  フォーム要素のコーディングに関するTips
-> JavaScriptを使ったTips
【見やすさと使いやすさ】ガラリと変わる!UI入門
第1回 ユーザビリティ再考
第2回 見やすい・読みやすいサイトを作る
第3回 フォームのユーザビリティを改善する
第4回 システムとユーザビリティ
関連記事
使いやすさと見やすさ
Webデザインワークフロー
使える!Webデザインアプリ
現場で使える!Flash
これならわかる!JavaScript/Ajax
即実践!HTML+CSS
Webデザイナは知っていた

Think IT 過去人気記事

注目おすすめ情報

Think IT人気ライター BEST 5