Как запретить IFRAME перенаправлять окно верхнего уровня

Использование require(...).default требуется согласно vue-loader@15, который включен в laravel-mix@4. Если вы используете предыдущие версии laravel-mix (как кажется), вам не следует добавлять .default:

let routes = [
    { path: '/', component: require('./components/App.vue') },
    { path: '/dashboard', component: require('./components/Dashboard.vue') }
];
123
задан Jason Cohen 15 December 2008 в 19:50
поделиться

5 ответов

Попытайтесь использовать onbeforeunload свойство, которое позволит пользователю выбрать, хочет ли он перейти далеко от страницы.

Пример: https://developer.mozilla.org/en-US/docs/Web/API/Window.onbeforeunload

В HTML5 можно использовать свойство песочницы. См. ответ Pankrat ниже. http://www.html5rocks.com/en/tutorials/security/sandboxed-iframes/

41
ответ дан 24 November 2019 в 01:16
поделиться

Так как страница, которую Вы загружаете в iframe, может выполниться, "повреждение" кодируют с setInterval, onbeforeunload не мог бы быть настолько практичным, так как это могло flud, пользователь с 'Действительно ли Вами уверен, что Вы хотите уехать?' диалоговые окна.

Существует также iframe атрибут безопасности, который только работает над IE & Opera

:(

2
ответ дан 24 November 2019 в 01:16
поделиться

Таким образом Вы смогли бы управлять любым действием обрамленной страницы, которая Вы не можете. То же - доменная политика источника применяется.

0
ответ дан 24 November 2019 в 01:16
поделиться

В моем случае я хочу, чтобы пользователь посетил внутреннюю страницу, чтобы сервер увидит их IP в качестве посетителя. Если я использую методику PHP Proxy, я думаю, что внутренняя страница увидит мой сервер IP в качестве посетителя, чтобы он не был хорош. Единственное решение, которое я добился до сих пор, - это onbeforeunload. Поместите это на вашу страницу:

<script type="text/javascript">
    window.onbeforeunload = function () {                       
         return "This will end your session";
    }
</script>

Это работает как в Firefox, так и т. Е. Это то, что я проверял. Вы найдете версии, используя что-то вроде EVT.return (что угодно) хрень ... это не работает в Firefox.

2
ответ дан 24 November 2019 в 01:16
поделиться
Другие вопросы по тегам:

Похожие вопросы: