我做了一个图片幻灯片放映,可以使用下一个按钮,或者如果你点击屏幕的右边或左边,它会显示下一张幻灯片。
问题是,当我点击下一个按钮时,点击绑定也会触发,这意味着它向前移动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);
});
任何帮助表示赞赏!
答案 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)
只是很好奇,但如果单击按钮会转到下一个点击事件,为什么不留下一个什么也不做的按钮?