「JavaScript」タグアーカイブ

サロゲートペアをJavaScriptでチェックする

サロゲートペアが含まれてるかをJavaScriptでチェックする方法を調べたときのメモ。

ユーザが入力した値にサロゲートペアが含まれていたらエラーとする要件がありましたが、どこでチェックするかに少し悩みました。画面が大量にありサーバ側でチェックするのはパフォーマンス的に不安でしたので、ブラウザ側でチェックすることにしました。

サンプルコード

また、ブラウザ側でもタイミングには迷いましたが、今回は入力欄からフォーカスが外れた時にチェックして、修正するまでフォーカスが外れないようにしてみました。

サンプルコードでは、クラス名がTESTというHTML要素のblurイベントに一括でチェックのイベントをセットしています(^^)/


JavaScriptで子画面から親画面の関数を実行する

JavaScriptで子画面から親画面の関数をする方法です。

基本的に子画面から親画面を操作したい場合には、「window.opener」を使います。例えば、親画面のmyFunc()という関数を実行した場合には、子画面で「window.opener.myFunc()」と記述することで実行できます。

 サンプルコード

親画面

子画面

子画面で「window.opener」により、親画面のwindowオブジェクトを取得しているイメージで、そのまま続けて「myFunc()」を記述して実行します。φ(.. )


FirefoxでIME起動中はkeyupイベントが発生しない

少し前に仕事で調べたのでメモ。

keyupイベントをキャッチして処理するJavaScriptのプログラムを開発していたのですが、Firefoxでうまく動作しませんでした。調べて見たところ、IME起動中(日本語変換中とか)には、Firefoxではkeyupイベントが発生しません。

 こちらのサイトで「日本語入力時に発生するキーイベントのテスト」ができます。

確認してみると、IEやChromeはIME起動中でもkeyupイベントが発生するのですが、Firefoxだけ発生しません。こういうのは揃えてほしい。

FirefoxのBugzzilaにもバグ?として報告されているので、いつかは治るかも( ̄ー ̄?)
https://bugzilla.mozilla.org/show_bug.cgi?id=354358