概要
iPadで別タブでBASIC認証のかかったページを踏むと、認証後2,3秒してフリーズしてしまうバグに悩まされていました。
しかも再現するときとしない時が、、なぜ。
あまりにも原因として考えられるのが多すぎるので、他の原因もあるかもしれませんが、
とりあえず備忘録として残します。
前提条件
iPad 第7世代 / iPad Air2
iOS 15.4
Safari 15.4
解決
今回新規タブを開くのにwindow.open
を用いていましたが、
これをシンプルに
<a id="link1" href="リンク" target="_blank" rel="noopener">リンク</a>
として、別タブで起動すると問題なく動作しました。
どうしてもjsでやりたければdocument.getElementById("link1").click()
とかでも。
なぜ?
完全な憶測です。
恐らくJSによるジャンプは動作せず、HTMLによるジャンプなら大丈夫という感じかと思われます。
Safariの微妙に対応してない部分とか考えると何かそんな気しなくもないんですが、、
そもそもSafariはBasic認証の情報が保存されなかったり上書きされたりで、
相性がかなり良くないっぽく、その内の一つのバグかも知れません。
追記 2022/03/28
15.4のSafariが結構抱えてるっぽいです。
手持ちのデバイス全部アップデートしちゃったんですが、
確かにアプデ前(恐らく15.2くらい)に検証していたソフトで発生しているので、
15.4のタイミングで何か変わったかもしれません。