Androidスマホでおなじみ! パターンロックを表示するPattern Lockプラグイン

CodeZine / 2014年12月3日 14時0分

図8 パターンロックを用いたCAPTCHA

 本連載では、JavaScriptライブラリとして利用頻度の高いjQueryとそのプラグインに着目して、その利用例を紹介します。今回はスマートフォンのUIをWebに取り入れることを意図して、Androidのロック解除画面で用いられるパターンロックをWebで実現する、Pattern Lockプラグインを紹介していきます。

■はじめに

 ここ数年、iPhoneやAndroidスマートフォン、各種タブレットが広く普及したことにより、Webページ閲覧者の多くがスマートフォンやタブレットのUIに習熟していることが想定されます。そのため、スマートフォンやタブレットで用いられているUIや操作感をWebページに取り入れることは、利用者の使い勝手を向上させるため有用です。

 そこで今回は、Androidで用いられるパターンロックをWeb画面に表示するPattern Lockプラグインを紹介します。パターンロックはn×n(Androidの場合3×3)の点をつなぐ順番によってユーザー認証を行う仕組みで、Androidでは図1のように端末のロックを解除する手段として用いられます。

図1 Androidスマートフォンのパターンロック画面


 パターンロックをWebに導入することで、以下のような認証手段として利用できるようになります。

ログイン時のパスワードとして利用 ID/パスワードに加えて利用してセキュリティを強化 Webページの表示にパターンロックを要求(機械によるクロールを抑止) ■対象読者

Webページにスマートフォンの操作感を持ち込みたい方 ちょっと変わった認証ページを提供したい方 キーボード入力なしで(マウスやタッチだけで)認証させたい方 ■必要な環境

 jQueryには1.x系と2.x系が存在し、2.x系はInternet Explorer 6~8との互換性を切り捨てることでコードサイズを縮小しています。今回は互換性を考慮して、1.x系の最新版であるjQuery 1.11.1を使用します。

 今回は以下の環境で動作を確認しています。

Windows 7 64bit版 Internet Explorer 11 ■Pattern Lockプラグインでパターンロックを表示

 Pattern Lockは、公式サイトからMITライセンスで配布されています。利用するにはダウンロードファイルに含まれるCSSファイル(patternLock.css)とJavaScriptファイル(patternLock.jsまたはpatternLock.min.js)をHTMLファイルから参照するよう記述します。

 Pattern Lockでパターンロックを表示する例をリスト1に示します。

リスト1 Pattern Lockでパターンロックを表示(001_patternLock_1.html)
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <!-- jQueryの読込 --> <script src="http://code.jquery.com/jquery-1.11.1.min.js"></script> <!-- Pattern Lockの読込 ... (1) --> <link href="js/patternLock/patternLock.css" rel="stylesheet" type="text/css" /> <script src="js/patternLock/patternLock.min.js"></script> <script> $(function() { // Pattern Lockの設定 ...(2) var lock = new PatternLock("#patternLock1"); }); </script> <title>Pattern Lock サンプル1</title> </head> <body> <h1>Pattern Lock サンプル1</h1> <!-- パターンロックを表示する要素 ... (3) --> <div id="patternLock1"></div> </body> </html>
 (1)でPattern LockのCSSファイルとJavaScriptファイルを読み込んでいます。パターンロックを表示する要素(3)に対して、(2)の実装でパターンロックを表示するよう処理しています。

 リスト1を実行すると、AndroidスマートフォンのようなパターンロックがWebページに表示されます。

図2 Pattern Lockプラグインで表示したパターンロック(001_patternLock_1.html)




CodeZine

トピックスRSS

ランキング