Youtube видео идет вверх от Iframe - PullRequest
4 голосов
/ 19 октября 2010

У меня есть страница с iframe, отображающая внешний веб-сайт, который покрывает всю страницу, сверху есть раздел с некоторым содержанием, похожим на новый интерфейс изображений Google.Если на странице, содержащейся в iframe, есть видео на YouTube, оно переходит на содержимое главной страницы, поскольку страница в iframe с внешнего веб-сайта не может установить прозрачный wmode на нем.

Есть лиспособ управления наслоением вспышки внутри iframe?

Спасибо

Giuseppe

Ответы [ 5 ]

4 голосов
/ 22 февраля 2011

Вам просто нужно изменить значение src в iframe следующим образом:

$('iframe').each(function() {
    var fixed_src = $(this).attr('src') + '&wmode=transparent';
    $(this).attr('src', fixed_src);
});

* Примечание. Это относится к встраиваемому коду YouTube.

1 голос
/ 22 апреля 2012

Добавьте?, А не &."? wmode = прозрачный" Например:

<iframe width="697" height="400" src="http://www.youtube.com/embed/IgvDkflXVuw?wmode=transparent" frameborder="0" allowfullscreen></iframe>
0 голосов
/ 17 сентября 2013

Просто добавьте также id вместе с остальными атрибутами в ваш iframe, как показано ниже

<iframe id="ytplayer" width="697" height="400" src="http://www.youtube.com/embed/IgvDkflXVuw?wmode=transparent" allowfullscreen="" type="text/html" wmode="Opaque"  frameborder="0" wmode="Opaque"></iframe>`
0 голосов
/ 08 декабря 2011

Просто добавьте &wmode=transparent в конце встроенного атрибута YouTube iframe src. Позднее вы можете изменить src с помощью jQuery, но зачем позволять странице загружать неправильный контент, а затем изменять его, чтобы он перезагружал нужный контент? Просто отредактируйте HTML.

0 голосов
/ 18 января 2011

Поскольку вы уже давно опубликовали вопрос, мне интересно, знали ли вы ответ.

В любом случае, вы можете попробовать изменить wmode с помощью javascript (с помощью jquery было бы гораздо проще;))

попробуйте этот код:

if ($('embed').length){
    $('embed').attr('wmode', 'transparent').wrap('<div>');
}

или, если он не распознает встроенный объект внутри iframe, вы можете попробовать:

if ($('iframe embed', parent.document).length){
    $('iframe embed', parent.document).attr('wmode', 'transparent').wrap('<div>');
}
...