技 巧 鍵 盤 ─ KeyNavi:キーボードを活用してホームページを快適に─    
キー割当表示[Shift-H]        
ホーム KeyNavi対応方法 [0] JavaScript@Keynavi.Netトップ [1] status出力をリダイレクト ・サイトマップ [Shift-S]

■ status出力をリダイレクト:kl_status(s,opt)

「window.status="文字列"」によって ブラウザ下部の「ステータスバー」に文章を表示し ユーザにメッセージを伝えられます。

直接「window.status」を操作せず 汎用のメッセージ関数を定義し 出力時は必ず関数を通すようにすると 表現の自由度が上がります (メッセージ関数の汎用化)。

【ステータス出力「kl_status(s,opt)」<keynavi_ja.js】

//----------------------------
//kl_status(s,opt)
//s:表示する文字列
//opt:オプション情報引数(略可)
//----------------------------
function kl_status(t,opt){
        //何らかの処理
        //if(opt.indexOf("ignore_me")==0) return;
        self.status=t;
}

例えば 写真集(fullscreen) のように フルスクリーンでウィンドウを表示した場合は ステータスバーが表示されず ユーザに情報を通知できません。 そのような場合は上記関数を再定義し 出力先をページ内の特定要素の中身にします。

【写真集ページでのりダイレクト例】

function kl_status(s,opt){
        var t1="<span>";
        var t2="</span>";
        if(opt=="sla_start" || opt=="sla_stop"){
                t1="<span style='color:#000000; background:#AAAAAA;'>";
        }
        kl_replace("stat1",t1+s+t2);
}

写真集(fullscreen) では「kl_status(s,opt)」を再定義し 何か出力があれば ページ内の「id="stat1"」の要素(ページ内左下部)の中身を 動的に書き替えています。

なお、自動表示の開始と停止の場合は色を反転させ ユーザの注意を喚起させています。

次は 出力を半透明レイヤーに対して行ってみましょう。

【半透明レイヤーにメッセージをリダイレクト】

function stat(s,opt){
        if(!self["slay"]) self["slay"]=kl_tlayer_new("");
        if(!s.length){ kl_tlayer_hide(slay); return; }
        kl_tlayer_write(slay,s,1);
        kl_tlayer_show(slay);
        kl_timer_start(kl_tlayer_update,new Array(slay),100,1);
        kl_timer_start(kl_tlayer_show,new Array(slay),100,1);
        kl_timer_start(kl_tlayer_hide,new Array(slay),1500,1);
}
self["kl_status"]=stat;

上のスクリプトを実行してみましょう。

ここで例えば 自動ナビの「G/T」やマーク「M」などを押してみて下さい。 メッセージが画面中央に出ると思います。

半透明レイヤー:kl_tlayer_new()
要素の中身を動的に変更:kl_replace(id,s,mode)
タイマー機能を簡単に利用:kl_timer_...()




【JavaScript@Keynavi.Net : その他編 】
「Ctrl-矢印」でフォーカスを上下左右に移動できます。

  - status出力をリダイレクト:kl_status(s,opt)
  - 外部スクリプトを動的に読み込む
  - フレームページでも個別URL指定を可能に
  - 文字列の暗号化:kl_encrypt/decrypt()
  - Try,Catch文の互換性対策
  - クッキー処理:kl_cookie_set/del/get()

トップへ戻る [1]
ホーム KeyNavi対応方法 [0] JavaScript@Keynavi.Netトップ [1] status出力をリダイレクト ・サイトマップ [Shift-S]
キー割当表示[Shift-H] ─ KeyNavi Project 2003 ─