蘋果safari瀏覽器window.open問題


現象:在做項目的過程中,使用window.open打開新窗口,在windows系統的ie,firefox,chrome瀏覽器上測試均沒有問題,在蘋果系統的safari瀏覽器上發現有些window.open可以打開選項卡,有些不可以打開

第一種可以打開選項卡

第二種則打不開選項卡

解決方案:百度發現“safari 中沒辦法在回調函數里面執行window.open, 原因是safari的安全機制將其阻擋了”,解決辦法就是在請求之前先打開一個空白窗口,在請求成功的回調函數里面:如果請求錯誤不需要開頁,則將開的空白窗口關掉;否則修改當前打開空白窗口的location地址

注:request_data.post_data()方法是自封的請求函數;postDataSucFun函數是請求成功之后的回調函數,error為0則請求成功,不為0則請求失敗關閉新的空白窗口


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM