タグ

ブックマーク / blog.enjoyxstudy.com (5)

  • keydown、keypressイベントのブラウザ毎の挙動の違い - Enjoy*Study

    こないだMac OS XのFirefoxで日本語入力ソフト使用時にEnterキーによる変換確定をkeydownイベントで拾ってしまう現象にヤラレたので、その問題を対処するにあたって他のブラウザでの動作を再確認しました。 その時の結果を、、イベントの発生有無とkeyCodeについて表にまとめてみました。数字はkeyCodeの値で、"-"になっているのはイベント自体が発生しなかったという意味になります。 Google Docs & Spreadsheets - keydown、keypressイベントのブラウザ毎の挙動 みごと、同じ挙動なのが1つも無いといった結果になりましたが、実際、よく問題になるのは下記の2点だと思います。 Mac OS X Safari 2.0.4 にて、カーソルキー(Up/Down/Left/Right)は1回押しただけで2度同じイベントが発生する。Safari 3.0

    keydown、keypressイベントのブラウザ毎の挙動の違い - Enjoy*Study
    wacky
    wacky 2007/08/02
    プラットフォーム/ブラウザごとのキー入力イベントの挙動まとめ。
  • Enjoy*Study - undefined

    変数、プロパティが定義されていない(undefined)かの判定処理を、その時々で適当いろいろな書き方をしてしまっているので、自分の中で整理してみます。 良く使う/見かけるのは、下記の3つです。 (!x) (x == undefined) (typeof x == 'undefined') 上記はそれぞれ成立する条件が異なりますので、下記にそれぞれ記載します。 (!x) コード一番短くて済むので多用するのですが、、 !xが成立するのは、xがundefinedの場合だけじゃなくて、多岐にわたるので使用時に注意が必要だと思います。 !xがtrueになるようなものには下記があります。 (思いつくままに挙げてみたので、これもそうだよ!!とかあったらコメントいただけると助かります) undefined null false 0 NaN '' (空文字) プロパティが存在するかどうかで、数値(Numb

    Enjoy*Study - undefined
    wacky
    wacky 2007/03/27
    JavaScriptのundefined判定処理の書き方いろいろ。
  • Enjoy×Study - ブラウザのスクロールバーで隠れている領域を含むサイズを取得する方法。

    昨日のエントリに引き続き、今度はスクロールバーで隠れている領域を含むサイズを取得するためのプロパティをまとめてみました。 Enjoy×Study - ブラウザの表示領域のサイズを取得する方法。 調査したのは、下記のプロパティです。 window.innerWidth window.innerHeight document.body.scrollWidth document.body.scrollHeight document.body.offsetWidth document.body.offsetHeight document.body.clientWidth document.body.clientHeight document.documentElement.scrollWidth document.documentElement.scrollHeight document.docu

    Enjoy×Study - ブラウザのスクロールバーで隠れている領域を含むサイズを取得する方法。
    wacky
    wacky 2006/08/07
    ブラウザ種類×表示モードにより変わるscrollWidth、scrollHeightプロパティの使い方まとめ。
  • ブラウザの表示領域のサイズを取得する方法。 - Enjoy*Study

    ブラウザの表示領域を取得するに当たって、「ブラウザの種類」×「表示モード(標準/互換)」によって参照するプロパティが変わってきます。 IE、FireFox、Opera、Safariにて、表示モード毎に参照すべきプロパティをまとめてみました。(Safariについては2007/05/20に追記) 調査したのは、下記のプロパティです。 window.innerWidth window.innerHeight document.body.scrollWidth document.body.scrollHeight document.body.offsetWidth document.body.offsetHeight document.body.clientWidth document.body.clientHeight document.documentElement.scrollWidth d

    ブラウザの表示領域のサイズを取得する方法。 - Enjoy*Study
    wacky
    wacky 2006/08/07
    ブラウザ種類×表示モードにより変わるclientWidth、clientHeightプロパティの使い方まとめ。
  • テキストエリアでリターンキーを押した際に、submitイベントの発生を抑止する方法 - Enjoy*Study

    テキストエリアでのリターンキーで、submitイベントが発生しないようにする場合、ブラウザ毎にどのような処理を書けばいいのか調べてみました。(submitイベント自体に処理を追加せずに、テキストエリアでのイベントで制御したかったので) テキストエリアでのリターンを拾えるイベントとしては、下記の3つがあります。 keypress keydown keyup イベントをキャンセルする方法は、IEのJScriptの実装と、DOM 2のEventモデルでの実装である下記の2パターンを試しました。 event.preventDefault() event.returnValue=false そして確認の結果、上記のイベント×キャンセル処理の組み合わせでsubmitイベントがキャンセル出来るのは、下記のパターンとなりました。 IE 6 keydown - event.returnValue=false

    テキストエリアでリターンキーを押した際に、submitイベントの発生を抑止する方法 - Enjoy*Study
    wacky
    wacky 2006/02/06
    テキストエリアでのリターンキー押下で発生するsubmitをキャンセルするやり方。IE6、Firefox1.5、Opera8.5でのクロスブラウザな処理方法。prototype.jsを使うとOperaではうまく処理できないとの事。
  • 1