2015-11-02 82 views
0

我有一個包含iframe的頁面。 iframe內部是一個可以理解的部分,可以節省onblur事件。只要onblur事件發生在iframe內部(點擊同一個iframe中的另一個區域),這就可以正常工作。在iFrame之外點擊聚焦元素時觸發模糊

但是,如果用戶在iframe區域(父級)之外單擊,則模糊事件永遠不會在iframe(子級)內觸發,因此數據不會保存。

如何獲得在iframe中觸發的onblur事件,即使在父級的iframe之外進行點擊操作?

我在這可以找到的所有答案都涉及到相反的情況,在iframe中點擊觸發父級事件。我如何做相反的事情?

+0

您可以複製問題嗎?因爲點擊父頁面應該會觸發iframe內部的任何模糊事件,如果它內部的特定元素被聚焦。順便說一句,在每個瀏覽器中,你測試它?它跨域的iframe? –

+0

@ A.Wolff好吧,那麼它可能是特定於我的情況。我的應用程序被加載到另一個系統窗口(在iframe本身)內,所以我的應用程序被加載到一個iframe中,在該iframe中我擁有一個自己的iframe ..兩者都在同一個域中。我將檢查我內部的父框架(在我的控制之外)是否取消默認的模糊事件。 –

回答

0

所以事實證明,問題是模糊事件沒有傳遞給我的編輯器。將下面的代碼添加到iFrame內部的編輯器中,使其正常工作:

$("[contenteditable='true']").blur(function(e) { 
    editor1.trigger('blur', e, $(e.target)); 
}) 
相關問題