Iframe и внешний веб-сайт

Итак, у меня есть этот код:

<iframe id="theFrame" src="http://localhost" style="width:100%;" frameborder="0">
</iframe>

и сайт localhost, загруженный в iframe, просто отлично.

но затем, когда я изменяю src на внешний веб-сайт

<iframe id="theFrame" src="http://www.youtube.com" style="width:100%;" frameborder="0">
</iframe>

Веб-сайт не загружался.

Что я сделал неправильно? Я знаю, что вы можете использовать внешние веб-сайты в iframe, поскольку Google Image Search делает это...

Как я могу заставить внешние сайты работать в моем iframe?

Ответ 1

Кажется, это проблема только с youtube; src= "http://www.mozilla.org" работает для меня в вашем коде. Если вы хотите отображать видео youtube в iframe, они, вероятно, захотят, чтобы вы использовали параметр "embed" на странице видео?

Ответ 2

Причина, по которой внешние веб-сайты, такие как:

  • youtube.com
  • google.com
  • stackoverflow.com
  • и др.

не загружаются в ваш фрейм, потому что они намеренно используют какой-то Frame Killer.

Пример (использует jQuery):

<style> html{display:none;} </style>
<script type="text/javascript">
    $(document).ready(function () {
        if(window.self == window.top) {
            document.documentElement.style.display = 'block'; }
        else {
       window.top.location = window.self.location; }
    });
</script>

Рекомендуемое чтение:

Ответ 3

Вероятно, вы испытываете те же проблемы, которые у меня есть. Скорее всего, iframe блокируется параметрами X-frame или блокируется свойством Deny. Например, если вы заходите в facebook из внешнего источника, он вернется с ответом DENY в google chrome

Ответ 4

Если вы запустите фрагмент кода ниже:

<iframe src="https://www.youtube.com"></iframe>