當在 iframe 中動態生成內容時, Chrome 瀏覽器結果總是正常的,但是 Firefox ,經常會出現已經生成的內容突然就不見了。 這個問題搞了兩天,終於找到了原因。
前提
iframe 中的內容是通過 javascript 動態生成的,並未通過 src
去請求服務器。
原因猜測
測試發現,Chrome 瀏覽器在未指定 src
時,並未觸發 onload
事件。 而 Firefox 卻觸發了 onload
事件。 在觸發 onload
後,或許是默認加載了 about:blank
(即空白頁),這就導致生成的內容不見了。
解決方法
在動態創建內容前,先判斷瀏覽器。若瀏覽器爲 Firefox
,那麼就在 onload
後再去生成內容。
後記:業務不熟害死人!