tries to open the second popup, if window object is one popup's window object is restricted, so this Even when popups are blocked in Safari, one popup is Delete the first item from the array for injecting into NewWindow.blockedMessage = blockedMessage NewWindow.openAllResultOpener = safariPopupOpener execution context of opener() below where they're used is the Must add these all to the popup's window object as the Var popupOpenerScript = document.createElement('script') Var newWindow = window.open('//url/of/the/blank/page/on/your/domain') * blockedMessage Message body to send back in * (via postMessage) when the blocker is enabled, so a notification can * Safari's global popup blocker setting and inform the primary page * and delegate the opening of the next popup to each new popup. * Handle the passed hrefs for Safari, which requires special/different The following is what I've built to handle this flow: /** Repeat until all your pop-ups are open.Redirect the first popup to your desired URL.Delegate the opening of the next popup to this popup by injecting a script that does it on load.Open a popup (blank page) on your domain.With the three popups in your example in mind, here's the general flow: Here's one more way that will allow you to open multiple popups without the need for a delay, using the knowledge that when "Block pop-up windows" is unchecked, each window may open one pop-up without a delay. So, you've discovered one way to get around this: Add a delay. When "Block pop-up windows" is checked, it seems only one popup will ever be allowed to open (despite delay used).As you've described, when "Block pop-up windows" is unchecked, multiple window.open calls must be delayed (>1s required in my testing).When "Block pop-up windows" is checked, access to the popup's window object is restricted (not the case when "Block pop-up windows" is unchecked). One popup is always allowed to open (even when the global "Block pop-ups" setting is checked).I’m glad that Apple added the feature in the OS itself otherwise you would have to run to a third-party app to block any pop-ups in Safari on your iPhone.Update: This question and solution is still valid as of Safari 13.įirst, here's the behaviour of Safari 11 I've observed from testing: In my personal opinion, I’d just leave the option turned on unless there’s a website that really requires a pop-up to work properly. The blocker should start working instantly and you should notice the changes without a reboot. When you’re done with your work and you’d like to enable the blocker once again, just head to the Safari settings panel on your iPhone and turn the toggle on for the Block Pop-ups feature. You’ll see that your browser now allows all of the pop-ups from all the websites you visit using it. Just launch Safari on your iPhone and open whatever website you wanted to visit that required you to have the pop-up blocker disabled. You don’t need to restart your iPhone for the changes to take effect as these changes immediately take effect without any reboots. The toggle should turn white from green which means the feature was successfully disabled on your iPhone.Ĥ. Now, just tap the toggle for the option and it will turn the feature off. You need to scroll a bit down and you should be able to see the option. What we’re looking for here is the option that says Block Pop-ups. These are all related to the Safari browser on your iPhone and you can adjust them however you want. The following screen has got tons of features to enable or disable.