确定 Javascript 中图像轮播的下一个正确移动
Determining next correct move for an image carousel in Javascript
我正在用Javascript制作一个圆形图像轮播。
它必须是圆形的,如果当前选择了 0 位置幻灯片并按下"上一个",它将跳转到最后一个位置幻灯片。如果当前选择了最后一个位置幻灯片并按下"下一步",它将跳转到 0 位置幻灯片。
另一个程序处理整个幻灯片,但我可以:
- 用
slide.current
检测移位后的当前位置 - 第一个位置为 0 - 使用
slide.items.length
检测幻灯片总数(在重新加载页面之前不会更改) - 在幻灯片程序完成自己的互补功能后,启动我自己的
nextSlide
和previousSlide
函数 - 使用幻灯片 API 中的
slideTo()
手动更改当前选定的幻灯片和指针位置 - 自动知道页面加载后,第一张可见幻灯片是项目总数(3 到 n)除以 2,四舍五入
这是我所拥有的:
var currentSlide = slide.current;
var lastSlide = 'undefined';
function nextSlide(){
currentSlide = slide.current;
if(lastSlide == 'undefined'){
lastSlide = currentSlide - 1;
} else if (lastSlide == 0) {
lastSlide = currentSlide;
} else{
lastSlide = lastSlide + 1;
}
if (lastSlide == currentSlide) {
slide.activate(0);
}
}
function previousSlide(){
currentSlide = slide.current;
if(lastSlide == 'undefined'){
lastSlide = currentSlide + 1;
} else if (lastSlide == slide.items.length - 1) {
lastSlide = currentSlide;
} else{
lastSlide = lastSlide - 1;
}
if (lastSlide == currentSlide) {
slide.activate(sly.items.length - 1);
}
}
当您混合previousSlide
呼叫和nextSlide
呼叫时,此操作将失败。lastSlide
变量变得不正确。
-
没有必要将 lastSlide 的值声明为"未定义"。如果在未赋值的情况下声明变量,则默认情况下它将变为未定义状态。
-
鉴于幻灯片充当对象,则 nextSlide 和 previousSlide 充当方法而不是独立函数更有意义。
-
最后幻灯片值应取决于当前幻灯片的值。
-
应使用严格的比较运算符,以避免将来出现类型混乱。(=== 而不是 ==)
相关文章:
- 简单的垂直上一个和下一个按钮代码点击上下移动jQuery
- JQuery insertAfter();移动下一个表格单元格
- 我们如何捕捉移动设备“;下一个“;在Javascript中按键
- 如何移动到数组的上一个/下一个索引键
- 字段验证器,它不允许移动到下一个字段
- 当一个字段已满时,将数据条目移动到下一个字段-JS制表
- 更改移动到phonegap中的下一个活动的风格-移动android
- 在动态创建的输入上使用向下箭头键将光标移动到下一个输入
- Jquery方法选择,用于移动到下一个父子
- 确定 Javascript 中图像轮播的下一个正确移动
- 如何在使用angularjs选项卡时单击按钮移动到下一个选项卡
- 如何在测验应用中移动到下一个或上一个问题
- 如果用户不更改该选项,请将焦点移动到下一个字段
- 如果不在表单中填写一个字段,我的光标不应该移动到 javascript 验证中的下一个字段
- 如果删除了 localStorage 密钥,请将所有下一个密钥移动 1 位
- AngularJS:单选按钮在移动到下一个部分后失去价值
- 选择1后无法切换以移动到下一个案例
- 花式框下一个和上一个按钮在移动设备上不起作用
- 当移动到最后一个li时,返回到第一个li(使用Jquery滚动到下一个)
- Javascript下拉菜单移动到下一个“;阶段”;