2011-12-23 1 views
3

私は既存のプロジェクトに取り組んでいます。 Webページ上で編集可能なテキストをクリックすると、テキストエリアになり、tinyMCEツールバーが表示されます。そのテキストエリアの外側をクリックすると、ツールバーが消えます。テキストエリアがフォーカスを失ったときにそのイベントを取得したいと思い、自動的にフォームを送信したいと思っています。tinyMCE textarea blur/focusoutイベントを検出するにはどうすればよいですか?

私はそのfocusoutイベントをキャプチャできません。 mouseoutイベントだけが動作していますが、テキストエリアの外に移動すると、フォームが送信され、毎回ページが更新されるため、それは良くありません。

$('.module-container form').live("mouseout", function() { // blur/focusout not working here. even ".module-container form textarea" selector not working 
    alert('outside'); 
}); 

は、どのようにTinyMCEをテキストエリアに focusoutイベントをキャプチャします。何か案が ?

おかげ

+0

のですか? –

答えて

1

試してみてください。

 
tinyMCE.dom.Event.add(tinyMCE.getInstanceById("editor-id").getWin(), "blur", function(){ 
    // Blur operations 
}); 

+0

これはエディタで使用されるiframeの副産物ですか? –

+1

tinyMCEツールバーが表示されたら、htmlに 'iframe'タグがあります。 – Student

+0

@Studentはい、MCE4のインラインモードを使用していない場合(http://www.tinymce.com/tryit/inline.php) – NoBugs

1

簡単な方法は、あなたが実際にエディタのインスタンスを取り除くことができます

$(ed.getDoc()).bind("blur", function(e){ 
    // do whatever you like here 
}, true); 
関連する問題