Лайтбокс не будет воспроизводить видео после первого раза - PullRequest
0 голосов
/ 05 сентября 2011

На моем сайте есть встроенное видео YouTube, которое воспроизводится в лайтбоксе. Когда пользователь нажимает на ссылку, видео воспроизводится нормально с первого раза. Если пользователь закрывает лайтбокс, то пытается снова щелкнуть ссылку для видео, лайтбокс загружается, но видео не воспроизводится. Это показывает пустой экран.

Есть идеи, что происходит?

Вот код:

Ссылка:

<a id="playvid" href="#video"><img src="/image" width="70" alt="Extra 1" /></a

DIV с видео:

div style="display:none"><div id="video" style="width:420; height:345;">
<iframe width="420" height="345" src="http://www.youtube.com/embed/..."
frameborder="0" allowfullscreen></iframe>
</div>
</div>

Сценарий:

<script type="text/javascript">
    var $j = jQuery.noConflict();
    $j(document).ready(function() {
$j("a.fancybox").fancybox();
$j("a#playvid").fancybox();
});
</script>

Я использую Fancybox 1.3.4

1 Ответ

2 голосов
/ 05 сентября 2011

Хорошо, тогда проблема довольно проста.Из-за того, что fancybox делает внутренне, когда вы закрываете fancybox (он очищает атрибут «src» для любых фреймов, которые он находит в отображаемом содержимом).Во второй раз, когда вы хотите посмотреть видео, атрибут src был очищен, поэтому вы ничего не видите.

Решение - либо взломать fancybox src и закомментировать строку, отвечающую за очистку «src»атрибут iframes) или ... хм, я не знаю, что еще, мне придется копать глубже.

...