2012-07-05 31 views
0

我一直在研究在下面的链接http://fredhq.com/projects/roundabout/中提供的图像环岛插件,除了无论点击哪个链接这一事实,无论是前方还是后方,回旋处都会向前滑动,但会将您带到刚才单击的图像的链接,因此使回旋处几乎无用。jQuery图像环岛仅用于链接前端图像

我刚刚才刚刚开始学习jQuery,不久前,我很缺乏经验,觉得我可能会在这里错过简单的东西。我只希望环形交叉口前方的图像链接到其必要的页面。当我点击前面一个后面的任何其他图像时,我只想让回旋处将该图像摆动到前面,但随后在该图像位于前面时启用点击链接

以下是我到目前为止

HTML

<section id="carousel"> 
<ol class="next"> 
    <li><a href="http://bandonthewall.org/"><img src="assets/images/carousel-item-1.png"></a></li> 
    <li><a href="http://google.com"><img src="assets/images/carousel-item-2.png"></a></li> 
    <li><a href="http://bandonthewall.org/"><img src="assets/images/carousel-item-3.png"></a></li> 
    <li><a href="http://google.com"><img src="assets/images/carousel-item-4.png"></a></li> 
    <li><a href="http://bandonthewall.org/"><img src="assets/images/carousel-item-5.png"></a></li> 
    <li><a href="http://google.com"><img src="assets/images/carousel-item-6.png"></a></li> 
    <li><a href="http://bandonthewall.org/"><img src="assets/images/carousel-item-7.png"></a></li> 
    <li><a href="http://google.com"><img src="assets/images/carousel-item-8.png"></a></li> 
    <li><a href="http://bandonthewall.org/"><img src="assets/images/carousel-item-9.png"></a></li> 
    <li><a href="http://google.com"><img src="assets/images/carousel-item-10.png"></a></li> 
    <li><a href="http://bandonthewall.org/"><img src="assets/images/carousel-item-11.png"></a></li> 
</ol> 
</section> 

JQUERY

$(document).ready(function() { 
     $('ol').roundabout({ 
     btnNext: ".next", 
     enableDrag: true, 
     }); 

    $('a').click(function(e){ 
     link = $(this).attr("href"); 
     location.href=link; 
    }); }); 

我会很感激这个

感谢

回答

1

代替此块的帮助:

$('a').click(function(e){ 
    link = $(this).attr("href"); 
    location.href=link; 
}); 

试试这个:

$('.roundabout-moveable-item a').click(function(e){ 
    if($(this).parent('li').hasClass('roundabout-in-focus')) { 
     link = $(this).attr("href"); 
     location.href=link; 
    } 
    else { 
     e.preventDefault(); 
    } 
}); 

我所做的是测试如果a的parent li元素是当前的元素(这由插件的类.roundabout-in-focus指定)。如果是,则允许链接通过。如果没有(如果它是后面的任何一个),则阻止链接激活。

让我知道这是否工作。我对插件不是很熟悉,这是基于快速研究。如果确实有效,这里是上述块的更细的替代版本:

$('.roundabout-moveable-item a').click(function(e){ 
    if(!$(this).parent('li').hasClass('roundabout-in-focus')) { 
     e.preventDefault(); 
});