双击问题

时间:2010-06-25 15:42:23

标签: jquery events click bind

我做了一个图片幻灯片放映,可以使用下一个按钮,或者如果你点击屏幕的右边或左边,它会显示下一张幻灯片。

问题是,当我点击下一个按钮时,点击绑定也会触发,这意味着它向前移动2个幻灯片。

如果点击下一个按钮,如何让click bind忽略点击?!

    $(opts.next).click(function(){

        nextSlide();

    });

    function nextSlide() {
        $slides.eq(currentSlide).fadeOut(opts.speed)

        currentSlide++;

        (currentSlide==totalSlides ? currentSlide=0 : false);

        updateSlideSHow()

    }

    function previousSlide() {
        $slides.eq(currentSlide).fadeOut(opts.speed)

        currentSlide--;

        (currentSlide<0 ? currentSlide=(totalSlides-1) : false);

        updateSlideSHow()

    }

    $(this).bind('mouseup',function(e){
        var ww = $(window).width();

        (e.pageX < (ww/2) ? previousSlide() : nextSlide());
            //alert(e.pageX+"<"+ww);

    });

任何帮助表示赞赏!

3 个答案:

答案 0 :(得分:0)

根据DOM,“下一步”按钮在哪里?屏幕元素,我可以点击并转到下一张幻灯片,这些按钮的父元素吗?

我问的原因是他们是否那样,例如:

<div id='screen'>
<img id='nextBtn' />
</div>

我不是100%,但我想如果你试图点击图像按钮,div也会注册为点击,因为它是父元素。相反,你可以试试这个:

<div id='screen'></div>
<img id='nextBtn' />

将屏幕元素绝对放在图像元素后面。

答案 1 :(得分:0)

ok - 在执行之前基本上点击了检查URL;

            $(document).bind('click',function(e){
                var ww = $(window).width();

                if(!$(this).attr('href')) $()(e.pageX < (ww/2) ? previousSlide() : nextSlide());
                //alert(e.pageX+"<"+ww);

            });

答案 2 :(得分:0)

只是很好奇,但如果单击按钮会转到下一个点击事件,为什么不留下一个什么也不做的按钮?