(JQuery) Fancybox запускать только с использованием классов? - PullRequest
0 голосов
/ 22 ноября 2010

Я пытаюсь получить список видео с миниатюрами, работающими с Fancybox - проблема в том, что каждая ссылка использует классы для запуска fancybox

Что если я хочу, чтобы это было более динамичным,список ссылок на видео и каждая открывает новое видео?Мне не нужно создавать новое определение функции клика для каждого из них. I?

<script type="text/javascript">

    $(document).ready(function () {

$ (". Fancyvideo5"). Click (function () {$ .fancybox ({'padding': 0,'overlayOpacity': 0.7, 'autoDimensions': false, 'content': 'myConent', 'onComplete': function () {$ ("# fancybox-inner"). css ({'overflow': 'hidden'});}, 'onClosed': function () {$ ("# fancybox-inner"). empty ();}}); вернуть false;});// fancyvideo

, и тело будет иметь что-то вроде:

<ul>

    <li>
        <a title="test" href="javascript:;" class="fancyvideo5"><img  src="thumbnail.jpg" /></a>
    </li>                                                                              

</ul>

идентификатор хотел бы иметь что-то вроде

<a title="test" href="javascript:openVideo(1);" class="fancyvideo5"><img  src="thumbnail.jpg" /></a>

Так что я могу передать видео информацию и позвонитьфункция вместо всего в документе готова.

Спасибо

1 Ответ

1 голос
/ 22 ноября 2010

Я некоторое время не использовал fancybox, но если я правильно помню, вы можете использовать одну функцию fancybox.

$(document).ready(function () {
    $(a.fancyvideo).fancybox(
         //settings
));

Тогда, для вас ссылки

<a href="#video" class="fancyvideo" />
<a href="#video2" class="fancyvideo" />
<a href="#video3" class="fancyvideo" />
<a href="#video4" class="fancyvideo" />

и

<div id="video" style="display: none;"> 
//insert embed code here
</div>
<div id="video2" style="display: none;"> 
//insert embed code here
</div>

<div id="video3" style="display: none;"> 
//insert embed code here
</div>

<div id="video4" style="display: none;"> 
//insert embed code here
</div>
...