UIWebView Javascript окно в окно связи
я работаю над приложением iOS, в котором яя пытаюсь использоватьUIWebView
для отображения различных веб-сайтов. Недавно я закончил логику, чтобы ввести Javascript вUIWebView
чтобы поймать случаи,window.open
window.close
, а такжеwindow.opener.focus
, Короче говоря, для этого я ввожу JS, который переопределяет вышеупомянутые функции JS, включая созданиеiframe
с определенной схемой, которую я могу поймать в приложенииwebView:shouldStartLoadWithRequest:navigationType
метод. Пока все работает нормально, в том числеwindow.open
создавая новыйUIWebView
вместо загрузки в том же окне.
Теперь, однако, проблема возникла там, гдеНевозможное решение для JS-связи между окнами. Если дочернее окно пытается вызватьwindow.opener
или жеwindow.parent
, Это'всегда возвращает нулевое значение, и, таким образом, он может 't вернуться к исходному веб-представлению.
Стремясь выяснить, какие браузеры iOS способны эффективно осуществлять связь между окнами, я обнаружил, что из 9 браузеров, установленных на моем iPhone, только Safari смог успешно выполнить эту связь. Это заставляет меня верить, чточто-то сUIWebView
это предотвращает полную коммуникацию JS от окна к окну.
У кого-нибудь был какой-либо успех в обеспечении полной интеграции UIWebView со всей логикой JS, а именно с передачей из окна в окно? Или есть доказательство того, что JS межсетевое взаимодействие неТ возможно? Любое направление или совет приветствуется. Спасибо!