SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

jQuery UI/プラグインの活用

ちょっとしたUI効果をプラスするjQueryプラグイン

「jQuery プラグイン」の利用(7)

  • X ポスト
  • このエントリーをはてなブックマークに追加

ダウンロード Samples.zip (1.2 MB)

jQuery UI Virtual Keyboardプラグイン

 jQuery UI Virtual Keyboardプラグインは、仮想キーボードを表示させて入力させるプラグインです。例えば、不特定多数の来場者が想定される展示会場などで、物理的なキーボードには触って欲しくない場合など、マウスのみで操作をさせたりといった使い方が考えられます。下記サイトからMottie-Keyboard-v1.6.2-0-g56d61b1.zipをダウンロードし、解凍後、Mottie-Keyboard-56d61b1フォルダ下のMottie-Keyboard-56d61b1フォルダをpluginsフォルダに配置します。

 また、jQuery UIは下記サイトからjquery-ui-1.8.11.custom.zipをダウンロードし、解凍後のjquery-ui-1.8.11.customをScriptsフォルダに配置します。jQuery UIはjQueryの機能を拡張し、マウス操作やアニメーション機能などユーザインタフェースに特化したライブラリです。jQuery UIのダウンロードは第1回を参考にしてください。

     今回は、デフォルトの仮想キーボードで、inputタグを使用する場合、text数字入力の仮想キーボードでinputタグ使用する場合について説明します。

     リスト5にプラグインの使用例を示します。

    リスト5 jQueryPlugin_UIVirtualKeyboardプラグインの使用例(jQueryPlugin_UIVirtualKeyboard.html)
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    <title>jQuery UI Virtual Keyboardサンプル</title>
    <!--1.jQueryの読み込み-->
    <script type="text/javascript" src="Scripts/jquery-1.5.2.min.js"></script>
    <!--2.プラグインの読み込み-->
    <script type="text/javascript" src="plugins/Mottie-Keyboard-56d61b1/js/jquery.keyboard.min.js"></script>
    <script type="text/javascript" src="Scripts/jquery-ui-1.8.11.custom/js/jquery-ui-1.8.11.custom.min.js"></script>
    
    <!--3.CSSの設定-->
    <link rel="stylesheet" href="plugins/Mottie-Keyboard-56d61b1/css/keyboard.css" type="text/css" />
    <link type="text/css" href="Scripts/jquery-ui-1.8.11.custom/css/ui-lightness/jquery-ui-1.8.11.custom.css" rel="stylesheet" /> 
    <style type="text/css">
       
        html{
            font-size: 14px;
        }
        body {
            font-family: helvetica, arial;
            margin: 0px;
            padding: 0px;
            font-size: 14px;
          }
          .container {
            margin: 0 auto;
            width: 800px;
            border-left: 15px solid #AA4488;
            padding-left: 25px;
          }
          h2 {
            margin-top: 60px;
          }
    </style>
    
    <!--4.プラグインの設定-->
    <script type="text/javascript">
        $(function () {
            //1.テキスト入力の例
            $('.qwerty').keyboard({ layout: 'qwerty' });
            //2.数字入力の例
            $('#num').keyboard({
                layout: 'num',
                maxLength: 6,
                restrictInput: true,
                preventPaste: true 
            });
        });
    </script>
    </head>
    <body>
       <div class="container">
       <h1>jQuery UI Virtual Keyboardサンプル</h1>    
           <div class="block">
            <h2>input class="qwerty" type="text"の場合</h2>
    		<input class="qwerty" type="text"/>
           </div>
           <div class="block">
            <h2>input class="qwerty" type="password"の場合</h2>
            <input class="qwerty" type="password"/>
           </div>
    	   <div class="block">
            <h2>textarea class="qwerty"の場合</h2>
    		<textarea class="qwerty" rows="2" cols="20"></textarea>
    	   </div>
    	   <div class="block">
            <h2>input id="num" type="text"の場合</h2>
            <input id="num" type="text" />
           </div>
        </div>
    </body>
    </html>
    

     今回は、表示領域を「3.CSSの設定」で、keyboard.cssとjquery-ui-1.8.11.custom.cssを読み込み、他にbody、container、h2について指定しました。こちらは、必要に応じて書き換えてください。

     プラグインの使い方は、「4.プラグインの設定」のように、keyboardメソッドを使用します。通常の仮想キーボードを表示させたい場合はinputタグでclassをqwertyに指定し、数字入力のキーボードを表示させたい場合はinputタグでidをnumと指定します。

     keyboardメソッドのオプションを表2に示します。

    表3 keyboardメソッドのオプション
    オプション 説明
    layout 仮想キーボードのレイアウトを指定する。qwerty/num
    maxLength 入力文字数を指定する。
    restrictInput キーボードに表示している文字のみ入力を許可する。true/false デフォルト:false
    preeventPaste コピーアンドペーストを許可しない。true/false デフォルト:false

     プラグイン適用後を図9~12に示します。

     入力部分にカーソルをあて、クリックすると、図9のような仮想キーボードが表示されます。

    図9 仮想キーボードでの入力
    図9 仮想キーボードでの入力

     入力後の結果を図10に示します。

    図10 入力後(layout:qwerty)
    図10 入力後(layout:qwerty)

     また、layoutをnum指定すると、図11のように数字入力キーボードが表示されます。

    図11 (3)プロパティの無効化(値固定)
    図11 (3)プロパティの無効化(値固定)

     入力後の結果を図12に示します。

    図12 入力後(layout:num)
    図12 入力後(layout:num)

    まとめ

     第7回では、ちょっとしたUI効果をプラスするjQuery Pluginとして、文章の折りたたみ機能、星形の評価機能の表示、仮想キーボードから入力させるプラグインを紹介しました。次回はハイライト、マウスオーバーでの変化などエフェクトをテーマにしたjQuery Pluginを取り上げる予定です。

    参考資料

この記事は参考になりましたか?

  • X ポスト
  • このエントリーをはてなブックマークに追加
jQuery UI/プラグインの活用連載記事一覧

もっと読む

この記事の著者

山田 祥寛(ヤマダ ヨシヒロ)

静岡県榛原町生まれ。一橋大学経済学部卒業後、NECにてシステム企画業務に携わるが、2003年4月に念願かなってフリーライターに転身。Microsoft MVP for Visual Studio and Development Technologies。執筆コミュニティ「WINGSプロジェクト」代表。主な著書に「独習シリーズ(Java・C#・Python・PHP・Ruby・JSP&サーブレットなど)」「速習シリーズ(ASP.NET Core・Vue.js・React・TypeScript・ECMAScript、Laravelなど)」「改訂3版JavaScript本格入門」「これからはじめるReact実践入門」「はじめてのAndroidアプリ開発 Kotlin編 」他、著書多数

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

WINGSプロジェクト asa(asa)

 <WINGSプロジェクトについて> 有限会社 WINGSプロジェクトが運営する、テクニカル執筆コミュニティ(代表 山田...

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • X ポスト
  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/5849 2011/04/13 14:00

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング