Я пытаюсь создать раздел «Featured items» на моем портфолио, используя Roundabout. Я также приложил Facebox, так что, когда пользователь нажимает на один из элементов Roundabout, скрытый div появляется в модальном окне. Все работает хорошо и хорошо.Интеграция jquery Roundabout с Facebox
Моя проблема заключается в том, что все элементы доступны для просмотра, а не только в фокусе, а при попытке вращать карусель активируется Facebox (есть очень маленькая область, которую можно щелкнуть, чтобы заставить вращаться, но ни один посетитель сайта не получит терпения, чтобы найти его). Мне нужно найти способ отключить ссылки на объектах вне фокуса, так что только передний элемент можно щелкнуть, что позволит вращать карусель.
Вот мой сценарий:
<script>
$(document).ready(function() {
$('ul#myRoundabout').roundabout();
$('a[rel*=facebox]').facebox();
});
</script>
Вот HTML:
<ul id="myRoundabout">
<li><a href="#bp" rel="facebox"><img src="images/ft/bp_ft.jpg" alt="Open house site" /></a></li>
<li><a href="#me" rel="facebox"><img src="images/ft/me_ft.jpg" alt="Personal website" /></a></li>
<li><a href="#wct" rel="facebox"><img src="images/ft/wct_ft.jpg" alt="Travel agency site" /></a></li>
<li><a href="#zen" rel="facebox"><img src="images/ft/zen_ft.jpg" alt="CSS Zen Garden" /></a></li>
</ul>
<!-- hidden divs to call-->
<div id="bp" style="display:none;">
<h3 class="box">Websites > BP Community Open House</h2>
<img class="box" src="images/gallery/bp_lg.png" />
</div>
<div id="me" style="display:none;">
<h3 class="box">Websites > kitkatkookoo designs</h2>
<img class="box" src="images/gallery/me_lg.png" />
</div>
<div id="wct" style="display:none;">
<h3 class="box">Websites > World Culture Tours</h2>
<img class="box" src="images/gallery/wct_lg.png" />
</div>
<div id="zen" style="display:none;">
<h3 class="box">Websites > CSS Zen Garden</h2>
<img class="box" src="images/gallery/zen_lg.png" />
</div>
<!-- end hidden divs-->
Я нашел соответствующий вопрос here. Рабочий раствор был добавлен в линии сценария:
$('ul.image-gallery .roundabout-in-focus a').live('click',function(event){event.preventDefault();$.fancybox({'href':$(this).attr('href')});})
Я понимаю, что это для FancyBox, не Facebox, но девушка может надеяться. Я попытался отредактировать его в соответствии с моими потребностями:
$('ul#myRoundabout .roundabout-in-focus a').live('click',function(event){event.preventDefault();$.facebox({'href':$(this).attr('href')});})
Но, учитывая мои ограниченные знания о js, я потерпел неудачу. Бросать это в микс только для того, чтобы полностью закрыть Facebox. Я думаю, что это связано с тем, что я использую div вместо изображений, но я не знаю, как адаптировать код.
Любая помощь будет оценена по достоинству.
EDIT:
После прочтения this post я пытался отключить все ссылки на мой кольцевой, так что я мог бы работать в обратном направлении, чтобы активировать этот пункт в фокусе. Однако другой не-гоу; все было доступно для кликов.
Это код, который я пытался добавить в мои теги сценария:
$('ul#myRoundabout roundabout-in-focus a').unbind('click.facebox');
До сих пор не уверен, что происходит здесь не так.
Edit 2:
Попытка получить творческие здесь. Я удалил rel=facebox
из моих ссылок, и добавил следующее к моему <script>
тегу:
$('ul#myRoundabout li').focus(function(){
$('ul#myRoundabout .roundabout-in-focus a').attr('rel','facebox');
});
Моя надежда с этим было то, что ссылки не будут иметь facebox отн, пока они не были в фокусе, так facebox Wouldn» когда они были не в фокусе. Еще раз, нет такой удачи. Этот метод закрыл facebox так, чтобы он вообще не запускался. Я чувствую, что я танцую в кругах вокруг ответа здесь ...