Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   Получить location дочернего окна (https://javascript.ru/forum/events/52848-poluchit-location-dochernego-okna.html)

dolte 09.01.2015 17:19

Получить location дочернего окна
 
Открываю ссылку в новом окне (не в новой вкладке)
<script>
        function winopen(){
            var params = 'scrollbars=no,resizable=no,status=no,location=no,toolbar=no,menubar=no' +
            'width=100,height=100,left=100,top=100';
            var newWin = window.open('<?=$getcodetoken;?>', 'test', params);
            newWin.focus();
 
            newWin.onload = function() {
 
            }
            setTimeout(function() {
                    alert(newWin.location);
            }, 2500);
        }
    </script>

т.к открываемый документ https, не могу получить
setTimeout(function() {
                    alert(newWin.location);
            }, 2500);

выдает мне ошибку
Uncaught SecurityError: Blocked a frame with origin "http://localhost" from accessing a frame with origin "https://тут ссылка". The frame requesting access has a protocol of "http", the frame being accessed has a protocol of "https". Protocols must match.


устанавливаю ssl сертификат, ошибка уже другая
Uncaught SecurityError: Blocked a frame with origin "https://localhost" from accessing a frame with origin "https://ссылка". Protocols, domains, and ports must match.


Есть ли какие варианты как мне всётаки передать ссылку дочернего окна в родительское ?

danik.js 09.01.2015 20:41

Хак с window.name или юзать postMessage (лучше скомбинировать). Вообще не очень по данной теме разбираюсь..

Deff 10.01.2015 02:54

Цитата:

Сообщение от dolte
Есть ли какие варианты как мне всётаки передать ссылку дочернего окна в родительское ?

С минимальными затратами ток postMessage http://javascript.ru/ajax/cross-orig...5:-postmessage
Вариант с window.name Гугол.Хром отрубил фишку
Есть еще пару древностей, с ужасным геммором.


Часовой пояс GMT +3, время: 15:55.