2017-02-01 15 views
0

まずはお時間をいただきありがとうございます。問題hereの明確な理解のために画像をご覧ください。ボタンをクリックしてフォーカスを外した後にイベントが発生しない

ボックスにはfocusoutイベントがあります。ボックスに入力中に、ユーザーがボタンをクリックした場合、clickはすぐに呼び出されたフォーカスアウトとして機能せず、ボタンはボックスからfocusoutと少し上に移動します。 focusoutの直後にボタンのクリックイベントを発生させる方法を事前に知るようになりました。サンプルコードはfocusoutです。

$(document).on("focusout", ".fn-enlargeTextarea", function(event) { 
    var optionNumber = ($(this).attr('id').replace('1option','')).trim(); 
    $('#1option'+optionNumber+'_counter').remove(); 
    $(this).removeClass('textarea-height01').addClass('textarea-height02');  
}); 
+0

.on( "focusout")の代わりに.blur()を使用できますか? – oompahlumpa

+0

問題は同じです@oompahlumpa –

+0

あなたは、ボタンのクリックイベントをトリガしたいfocusoutで正しいですか? – oompahlumpa

答えて

0

伝播を停止してから、ボタンをクリックしてコールすることができます。私はこれをしましたhere

event.stopPagation(); 
+0

plzは構造全体のマークアップを共有します –

0

jqueryを使ってイベントを引き起こすことができます。 focusout上で実行するコールバック関数内で

$("#targetElm").trigger("click"); 

:あなただけfocusout後のボタンのクリックイベントを発射したい場合は、以下の行を追加します。

関連する問題