「競走馬検索」機能の動作について。(昨日頂いたコメントも踏まえて。)
現在、出張先でございます。
「The Sunday Breeze」管理人でございます。
今日は
「競走馬検索」機能についていただいたコメントについてと、
あわせて動作について少々ご説明をしたいと思います。
-----
昨日つばめさんよりいただいたコメント
「馬名入力して検索開始をクリックすると、
検索結果のところに対象頭数しか出ない」
ということでした。
---
今回、まず以下の操作をしていただきますと
その時点で入力されている条件に該当する「頭数」が表示されます。
・「馬名」「父馬名」「母馬名」を入力する箱(テキストボックス)から、
他の条件や項目へ移動した(フォーカスがなくなった)とき(JavaScript的に言うとonBlur)
・「生年」を変更したとき(JavaScript的に言うとonChange)
・「性別」「現在(最終)所属」のどれかにチェックを入れた/はずしたとき(JavaScript的に言うとonClick)
そして、頭数の検索中は
「検索開始」ボタンは「検索件数取得中」と表示され、
ボタンが押せなくなります。
頭数の検索が終了すれば、ボタンは再度「検索開始」となって、ボタンは押せるようになります。
検索頭数が多いと、検索に時間がかかります。
表示された頭数を確認していただいて
条件をさらに絞り込めれば、その後の検索が早くなります。
---
話を戻します。
「馬名」を入力して、他の条件に移動せず検索ボタンを押すと
検索されず、対象件数のみが表示されてしまう件。
検索ボタンを押す(JavaScript的に言うとonClick)ということは、
同時に「馬名」の箱から他の項目(検索ボタン)へ移動した
→「馬名」のテキストボックスからフォーカスがなくなったことになります。
これは…技術的な話になりますが、JavaScriptの仕様のようです。
いくつかのイベントが重なった時に、動作の優先順序ってのがあるらしくて
click(ボタンがクリックされた)とblur(テキストボックスからフォーカスがなくなった)では
blurが優先されるようです。
こういうときは、mousedown(マウスが下がる→押される)というイベントだと
blurより優先的に処理されるようです。
…ところが。
確認したところ、これでうまく動くのはFirefoxとOperaのみ。
IEとChromeでは、やっぱり頭数の検索が先に動いてしまいます。
もうちょっといろいろ試してみたいと思います。
-----
さて。
今夜は結局、このバグ修正でいっぱいいっぱいになってしまいました。
とはいえ、
まだ他にもバグがありそうな気がしています。
多くの皆様にお使いいただいて、気になる点などありましたら
忌憚なくコメントをお寄せいただければ幸いです。
よろしくお願いします。
「The Sunday Breeze」管理人でございます。
今日は
「競走馬検索」機能についていただいたコメントについてと、
あわせて動作について少々ご説明をしたいと思います。
-----
昨日つばめさんよりいただいたコメント
「馬名入力して検索開始をクリックすると、
検索結果のところに対象頭数しか出ない」
ということでした。
---
今回、まず以下の操作をしていただきますと
その時点で入力されている条件に該当する「頭数」が表示されます。
・「馬名」「父馬名」「母馬名」を入力する箱(テキストボックス)から、
他の条件や項目へ移動した(フォーカスがなくなった)とき(JavaScript的に言うとonBlur)
・「生年」を変更したとき(JavaScript的に言うとonChange)
・「性別」「現在(最終)所属」のどれかにチェックを入れた/はずしたとき(JavaScript的に言うとonClick)
そして、頭数の検索中は
「検索開始」ボタンは「検索件数取得中」と表示され、
ボタンが押せなくなります。
頭数の検索が終了すれば、ボタンは再度「検索開始」となって、ボタンは押せるようになります。
検索頭数が多いと、検索に時間がかかります。
表示された頭数を確認していただいて
条件をさらに絞り込めれば、その後の検索が早くなります。
---
話を戻します。
「馬名」を入力して、他の条件に移動せず検索ボタンを押すと
検索されず、対象件数のみが表示されてしまう件。
検索ボタンを押す(JavaScript的に言うとonClick)ということは、
同時に「馬名」の箱から他の項目(検索ボタン)へ移動した
→「馬名」のテキストボックスからフォーカスがなくなったことになります。
これは…技術的な話になりますが、JavaScriptの仕様のようです。
いくつかのイベントが重なった時に、動作の優先順序ってのがあるらしくて
click(ボタンがクリックされた)とblur(テキストボックスからフォーカスがなくなった)では
blurが優先されるようです。
こういうときは、mousedown(マウスが下がる→押される)というイベントだと
blurより優先的に処理されるようです。
…ところが。
確認したところ、これでうまく動くのはFirefoxとOperaのみ。
IEとChromeでは、やっぱり頭数の検索が先に動いてしまいます。
もうちょっといろいろ試してみたいと思います。
-----
さて。
今夜は結局、このバグ修正でいっぱいいっぱいになってしまいました。
とはいえ、
まだ他にもバグがありそうな気がしています。
多くの皆様にお使いいただいて、気になる点などありましたら
忌憚なくコメントをお寄せいただければ幸いです。
よろしくお願いします。
[コメント読む(2)]