ブロックされないように新ウインドウ開く方法を考える。

iOS 8/9のSafariでは、<a href=”window.open(…)”>では、開かれるウインドウは阻止されてしまう現象があります。一つの方法としては、<a href=”#” onclick=”window.open(…)”>のように変えることです。つまり、hrefにウインドウを開くコードを入れずに、onclickの方に入れます。

上記の現象はいつ起きるかは本当にバージョンによるかもしれません。今後にもonclickが通用する事を祈るしかないかもしれません。

より確実な方法はどうかは確定できないですが、下記のようなJavaScriptもできます。

なぜ、fo.actionにURLパラメータを直接に書き込まないかというと、iPhoneで「?」以降の文字列が全部失われるという現象が観測されている。なので、この方法をあえて避けました。

Leave a Reply

Your email address will not be published. Required fields are marked *