如何使用Jquery/JavaScript使此图像滑块在单击时滑动不止一次
How do I make this image slider to slide more than once when clicked, using Jquery/JavaScript?
我正在处理以下Jquery/JavaScript片段。
基本上它是一个面向对象的图像滑块。请参阅JSBin上的代码:http://jsbin.com/eloduj/3/edit#html,实时
问题是,当我单击滑块导航控件时,它在每个方向上只滑动一次!由于有4个图像DIV,我如何才能使其正常工作?
任何帮助都将不胜感激,谢谢
答案(在rdcmk的帮助下)分享是关怀
JS-
var cn = {
hero : function(r,rc,lx,rx){
rc=$(rc),rcw=rc.width(),rca=rc.size(),rw=rcw*rca;$(r).css({'width':rw});
$(lx).click(function(){n=$(r).position().left-rcw; $(r).animate({left:(n<-rw+rcw?0:n)+'px'},500);});
$(rx).click(function(){n=$(r).position().left+rcw; $(r).animate({left:(n>0?-rw+rcw:n)+'px'},500);});
}
}
$(function(){
cn.hero('#reel', '#reel div', '#reel-left', '#reel-right');
});
HTML&CSS
* { padding:0; margin:0; outline:none; font-family:Arial, Helvetica, sans-serif; }
#wrap { width:1024px; margin:0 auto; }
#hero { border:1px dashed lime; position:relative; width:1022px; height:304px; overflow:hidden }
#hero #reel { border:1px dashed red; position:absolute; height:302px; left:0; }
#hero #reel div { width: 1018px; height:300px; float:left; }
#reel-controls { position: absolute; z-index:10; }
<div id="hero">
<div id="reel">
<div id="pic1" style="background-color:#C3F"></div>
<div id="pic2" style="background-color:#0F9"></div>
<div id="pic3" style="background-color:#999"></div>
<div id="pic3" style="background-color:#6CC"></div>
</div>
<div id="reel-controls">
<span id="reel-left">left</span>
<span id="reel-right">right</span>
</div>
</div>
我想我明白了:http://jsbin.com/eloduj/14/edit#html,实时
答案很简单。您当前正在执行与x=3
等效的操作,而您需要x=x+3
。。
做这样的事情(伪代码)
$(leftCtrl).click(function(){
var currentLeft = $(reel).offset().left;
$(reel).animate({ left: currentLeft-reelChildWidth }, 500 );
});
$(rightCtrl).click(function(){
var currentlLeft = $(reel).offset().left;
$(reel).animate({ left: currentLleft+reelChildWidth }, 500 );
让我知道这是否足够好,或者你是否需要一个运行的例子。
相关文章:
- 单击元素两次后执行操作
- 我该如何阻止单击方法多次工作
- Slding表单不会一次显示一个表单
- KnockoutJS绑定每个文档不止一次
- 单击从一张图像切换到两张图像,然后再切换回一张图像
- 如何在单击下一步时使文本移动/更改
- 如何循环函数数组并在单击时一次执行一个
- 元素出现后调用单击事件一次
- 我怎样才能防止这种“点击”发生不止一次
- 防止ajax回调settimeout每次单击执行一次以上
- jQuery单击工作一次,而不是两次
- 如何使用Jquery/JavaScript使此图像滑块在单击时滑动不止一次
- Javascript启用禁用单选按钮,单击,一次只选择一个
- Javascript启用禁用复选框,单击,一次只选择一个
- 显示/隐藏或切换具有相同类的多个元素,单击时一次只显示一个
- 触发点击不止一次
- 为什么在多次启动$.click()时,如果链接被单击一次,它会捕获它不止一次
- 如何使用Jquery表单与php while循环不止一次
- 如何播放一个声音不止一次的按钮点击
- 点击里面的点击功能导致警告信息显示不止一次- Jquery/Javascript