Как получить iframe Youtube

Я пытаюсь встроить видео с YouTube с помощью этого кода:

и хотя он работает нормально, но выдает эту ошибку в консоли:

Версия Chrome 22.0.1229.94:

Небезопасная попытка JavaScript получить доступ к фрейму с URL-адресом http://example.com/
из фрейма с URL http://www.youtube.com/embed/8vJwFvFi4ZY?wmode=transparent.
Домены, протоколы и порты должны совпадать.

Версия Firefox 17.0:

Ошибка: Отказано в доступе к свойству toString

Я искал вокруг, но обнаружил, что это, вероятно, проблема с YouTube, и они должны ее решить,

Возникает вопрос:: как я могу избавиться от этой ошибки? (любыми способами, даже подавляя его.)

Это небольшое предположение, поэтому я не собираюсь публиковать его в качестве ответа, но я подозреваю, что скрипт в контенте YouTube пытается просмотреть параметры iframe, чтобы получить такие параметры, как wmode и allowfullscreen. Ваш браузер правильно воспринимает это как попытку межсайтового скриптинга, которая не разрешена по соображениям безопасности. Если вместо этого вы вставите все параметры, требуемые YouTube, в строку запроса URL, вы можете помешать ему сделать это. — Noel Walters

iframe Tag in Html: Display Youtube Videos on The Browser (With a Surprise )

Также не мог не заметить, что у вас есть wmode=opaque в iframe и wmode=transparent в URL. — Noel Walters

Я читал много мнений о том, почему это происходит, и многие говорят, что это связано с тем, что загруженные API-интерфейсы Youtube внутри iframe пытаются получить доступ к родительскому элементу, что противоречит стандартам безопасности, и об этом уже сообщается как об ошибке, но я больше Здесь речь идет о том, как предотвратить появление этой ошибки в консоли, а не просто ждать, пока разработчики Youtube решат ее. А по поводу wmode не заметил 🙂 , спасибо — AbdelHady

Еще по теме:  Ананас как вырастить на Ютубе

Мое предложенное (предполагаемое) решение находится в последней строке моего комментария — вставьте все параметры, требуемые YouTube, в строку запроса URL — это стоит попробовать. — Noel Walters

Я пробовал, но все равно ошибка — AbdelHady

5 ответы

Вы не можете остановить это, по крайней мере, я не знаю (а я много пробовал). В пункте назначения iframe есть скрипт, который пытается получить доступ к вашему документу, вероятно, ища глобальные функции, которые он может вызвать для включения API.

Другое дело, что ошибка сохраняется даже при использовании своих iframe API: http://jsbin.com/izabed/1/edit

Ничего страшного в этом нет, ваше видео будет работать нормально. Но это выглядит довольно жирно, если вы запускаете его в консоли. Вероятно, они должны включить это как параметр, и сначала я подумал, что это была идея origin параметр, но это не имеет никакого значения.

Также стоит отметить, что собственные демонстрация выдает ту же ошибку (и другие). Кроме того, если вы используете embed тег вместо iframe, он не будет отображать никаких ошибок.

Таким образом, вы можете сделать что-то подобное, чтобы предотвратить ошибку в большинстве настольных браузеров:

if(haveflash) < // use > else < // use iframe >

Обновление ПО

Большинство браузеров больше не поддерживают flash, и не Adobe. К сожалению, это означает, что использование больше не является жизнеспособным вариантом.

Создан 27 июля ’20, 22:07

Источник: stackovergo.com

Mihdan: Lite YouTube Embed │

Служит для реактивного встраивания YouTube роликов на вашем сайте под управлением WordPress.

Данное решение обеспечивает встраивание видео с повышенным акцентом на визуальную производительность.

Пользовательский элемент внешне выглядит также, как и стандартный от YouTube, но рендерится примерно в 224 раза быстрее.

Еще по теме:  Жил был пес 1982 Ютуб

Ролики начинают загружаться быстрее, чем вы успеете чихнуть.

Сравнение

Встраивание через Встраивание через

Пример

Помочь проекту

Чтобы помочь проекту оставаться на плаву, обо всех найденных ошибках, идеях сообщайте в наш официальный репозиторий на гитхабе.

Источник: wp-kama.ru

Рейтинг
( Пока оценок нет )
Загрузка ...