Доброго времени суток, коллеги!
Есть у кого-нибудь идеи, как можно определить внутри iframe, что ему разрешено менять top.location? Т.е. либо не выставлен вообще sandbox, либо выставлен с "allow-top-navigation".
"allow-scripts" легко детектится с помощью document.domain. А вот с "allow-top-navigation" появились проблемы.
Конечно же, на ум сразу пришла такая идея:
try {
window.top.location.href = 'http://google.ru';
}
catch(e) {
console.log(false);
}
Но в этом случае, при "allow-top-navigation" будет происходить редирект. Мне же нужно просто узнать, можно ли сделать редирект в top, и в зависимости от этого отправить нужный параметр аяксом на сервер.
Ещё была идея:
try {
window.top.location.hash = Math.random().toString(16);
}
catch(e) {
console.log(false);
}
Но родителю, в лучшем случае, можно менять только href (или весь location целиком).
Буду благодарен за советы.