2011-01-14 9 views
0

私はぼかしイベントを持つ入力要素と、クリックイベントを持つリンク要素を持っています。私が実行している問題は、誰かがリンク要素(クリック)をクリックし、フォーカスが入力要素(ぼかし)から取り除かれたときですが、同時に発生するイベントはぼかしイベントを完全に実行しません。jQueryは、「ぼかし」が完全に実行された後に「クリック」するだけです

クリックイベントを発生させる前に、ブラーイベントが完全に実行されるようにする最良の方法は何ですか?

答えて

1

これはこれを処理する最良の方法ではありませんが、動作するはずです... delay()click()イベントに入れてみてください。

私の他の考えはblur()のコールバックからあなたのclick()ハンドラを呼び出そうとすることができますが、実際にどのように動作するのかを知るためにはちょっと変わってしまいます。

+0

にフックする必要がある第二思想に

は、JavaScriptで遅延なし()メソッドはありません;) –

+0

ポストに「jquery」タグがあります... –

+0

私の知る限り、遅延はjqueryエフェクトキューで動作し、イベントとは何の関係もありませんが、何かを逃した可能性があります。私は謝罪します:) –

0

リンク上でクリックイベントにフックし、そのイベントハンドラ内でinput.blur()を呼び出すことができます。リンクをクリックし、新しいページをロードするためにぼかしが実行されない場合、あなたはおそらく私の知識にアンロードまたはbeforeunloadイベント

+0

それはまともな考えです。しかし、どの入力にフォーカスがあっていたかを知る上で問題が発生する可能性があります。 –

関連する問題