這篇文章帶給大家的內容是關於window.open()彈跳窗被瀏覽器攔截的解決方法,有一定的參考價值,有需要的朋友可以參考一下,希望對你有幫助。
什麼情況下會彈出視窗被攔截
當window.open為使用者觸發事件內部或載入時,不會被攔截,一旦將彈出程式碼移到ajax或是一段非同步程式碼內部,馬上就出現被攔截。
obj.onclick = function(){ window.open(url) // 会被拦截 } obj.onclick = function () { ajax({ url: '/xxxxxx/', success: function (url) { window.open(url); //会被拦截 } }) } });
解決
obj.onclick = function () { var newWindow = window.open(); //先在回调函数之前打开新窗口,后再加载url ajax({ url: '/xxxxxx/', success: function (url) { newWindow.location.href = url; } }) }
這篇文章到這裡就已經全部結束了,更多其他精彩內容可以關注PHP中文網的JavaScript教學影片專欄!
#以上是window.open()彈跳窗被瀏覽器攔截的解決方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!