2013-12-17 40 views
1

我一直在嘗試使用下面的方法,已在許多SO職位和tinyMCE的站點被提及,以及捕捉時TinyMCE的場模糊:tinyMCE的3.5模糊事件觸發被點擊工具欄按鈕時

tinyMCE.dom.Event.add(ed.getDoc(), 'blur', onBlur); 

但是,我注意到即使用戶單擊tinyMCE工具欄上的按鈕(如粗體,斜體,下劃線),也會觸發此事件。有什麼辦法可以防止這種情況發生。我已經嘗試了幾種不同的解決方案來檢查被點擊的目標元素,但沒有提出在所有瀏覽器中一致工作的任何內容。

嘗試:

function onBlur(e) { 
    if($(e.target.activeElement).hasClass('mceIcon')) return; 
    // do something 
} 

function onBlur(e) { 
    if($(e.target.activeElement).parents('#' + ed.editorContainer).length > 0) return; 
    // do something 
} 

另外,我注意到,這似乎是一個IE8(可能還有其他IE版本也一樣)的特定錯誤。這是一個顯示行爲的JSFiddle:http://jsfiddle.net/klinden/8rs4j控制檯記錄所有調用模糊的實例。

回答

0

同樣在這裏,v4.6.1,即使它是寫在文檔,「當編輯是模糊的,但不是當焦點移動到任何編輯UI組件會觸發該事件。」

我甚至試過custom_ui_selector: '.mce-menubar, .mce-toolbar-grp'選項沒有運氣

https://www.tinymce.com/docs/advanced/events/#blur

相關問題