2 回答

TA貢獻(xiàn)1887條經(jīng)驗(yàn) 獲得超5個(gè)贊
某些瀏覽器在非用戶主動(dòng)觸發(fā)打開新窗口是會(huì)進(jìn)行攔截。比如你這種由程序自動(dòng)執(zhí)行而打開的新窗口,肯定會(huì)被攔截掉。
可以將新窗口綁定到用戶到操作中,比如click事件之中。
你這個(gè)很明顯是一個(gè)請(qǐng)求獲取到結(jié)果之后打開。如果這個(gè)請(qǐng)求是由用戶觸發(fā)到,可在觸發(fā)請(qǐng)求時(shí)打開窗口,在請(qǐng)求完成重置該窗口到URL為請(qǐng)求結(jié)果就OK了

TA貢獻(xiàn)1866條經(jīng)驗(yàn) 獲得超5個(gè)贊
先說為什么,因?yàn)橐郧坝械牧髅ゾW(wǎng)頁 在用戶進(jìn)去頁面后彈出很多新窗口 影響用戶體驗(yàn),后來瀏覽器開發(fā)商為了避免這種情況就加了判斷,如果不是由用戶主動(dòng)操作觸發(fā)的,就會(huì)被瀏覽器攔截。允許將 open 放到定時(shí)器 但是不得超過1000ms 超過的也會(huì)被攔截。
類似的還有比如 移動(dòng)端的 媒體自動(dòng)播放,在產(chǎn)生用戶交互前,都是不能被調(diào)用 play 方法。
可以先交由后臺(tái)創(chuàng)建訂單,創(chuàng)建成功后 返回url,然后在UI構(gòu)建上 判斷如果創(chuàng)建成功后 顯示一個(gè) modal 框。比如 “去支付” ,然后執(zhí)行代碼。
- 2 回答
- 0 關(guān)注
- 2646 瀏覽
添加回答
舉報(bào)