2008年7月4日金曜日

Firefox enterでタブ移動 JavaScript

IEとFirefoxではJavaScriptのイベントの扱いがちがうらしい。
そのなかで、変数の扱いがIEではグローバルで扱うがFirefoxでは属性の中に記述しなければ取得出来ないということなので、JavaScriptの基本構造を変えねばならない事態に陥った。

<input type="text1" value="" onkeypress="test2,event.keyCode"/>
<input type="text2" value="" onkeypress="test1,event.keyCode"/>

テキストBOX1と2をEnterで行ったり来たりする

function nextFocus(nextObj,keyCode){
  if(keyCode==13){ //ここの処理はenterでtab移動を可能にする
  nextObj.focus();
  nextObj.select();
  window.event.returnValue = false;
  }
}

これはevent.keyCodeを第2引数として番号を属性の中で取得する方法となる。これはIEでは属性になくても取得してくれるので、こういう気の利いた(場合によってはおせっかい?)動きがつもり積もってIEは遅いということなのだろうか。

それにしてもFirefox を意識なければならない時期に来ているかもしれない

0 件のコメント: