如果下一个元素是最后一个元素隐藏另一个元素
JQuery if next element is last element hide another element
一直点击向下按钮:http://thomasgrist.tumblr.com/直到你到达最后。向下的箭头应该一键消失。任何想法,我如何能实现这一点与以下代码?
我是一个新手,但是我认为我需要在else语句中加上一个条件if index = something做这个,但是我不知道索引应该是什么,也不知道怎么写
$('#next').click(function (event) {
event.preventDefault();
var $current = $('#listOfWork > .current');
if ($current.index() != $('#listOfWork > div').length - 1) {
$("#next").css("display", "inline");
$("#prev").css("display", "inline");
$current.removeClass('current').next().addClass('current');
scrollTo($current.next());
} else {
$("#next").css("display", "none");
}
});
$('#prev').click(function (event) {
event.preventDefault();
var $current = $('#listOfWork > .current');
if (!$current.index() == 0) {
$("#next").css("display", "inline");
$("#prev").css("display", "inline");
$current.removeClass('current').prev().addClass('current');
scrollTo($current.prev());
} else {
$("#prev").css("display", "none");
}
});
我认为你需要添加这个条件:
if($current.next().is(':last'))
我想出了如何做到这一点。下面是代码。如果下一个div索引值等于div的数量减去2,则不显示下一个按钮。为了在没有前一个div时隐藏前一个按钮,我们编写了一个条件,当当前索引等于1时。
(function() {
var scrollTo = function(element) {
$('html, body').animate({
scrollTop: element.offset().top - headerHeight + 40}, 500);}
$('#next').click(function(event) {
event.preventDefault();
var $current = $('#listOfWork > .current');
if ($current.index() == $('#listOfWork > div').length - 2) {
//alert('Current index is ' + !$current.index() + '.');
$("#next").css("display", "none");
$("#prev").css("display", "inline");
$current.removeClass('current').next().addClass('current');
scrollTo($current.next());
} else if ($current.index() != $('#listOfWork > div').length - 1) {
//alert('Current index is ' + !$current.index() + '.');
$("#next").css("display", "inline");
$("#prev").css("display", "inline");
$current.removeClass('current').next().addClass('current');
scrollTo($current.next());
}
});
$('#prev').click(function(event) {
event.preventDefault();
var $current = $('#listOfWork > .current');
if ($current.index() == 1) {
$("#prev").css("display", "none");
$("#next").css("display", "inline");
$current.removeClass('current').prev().addClass('current');
scrollTo($current.prev());
} else {
//alert('Current index is ' + !$current.index() + '.');
$("#next").css("display", "inline");
$("#prev").css("display", "inline");
$current.removeClass('current').prev().addClass('current');
scrollTo($current.prev());
}
});
})
();
相关文章:
- 切换一个元素并将其余元素隐藏在同一包装类下
- CSS 动画在元素隐藏时暂停
- 检查元素是否可见,父元素隐藏在DOM中
- 粘性导航元素 - 隐藏然后显示
- show() 在元素隐藏时不起作用
- 通过可见性隐藏和显示元素:隐藏/可见
- 如何从检查页面元素隐藏Blogger中的javascript代码
- 基于页面元素隐藏部分html代码
- 使用jQuery和select元素隐藏动态类
- Jquery Div元素隐藏
- 当指针在父元素上时,Boostrap工具提示会在父元素隐藏之前触发悬停事件
- 聚焦元素隐藏在固定菜单后面
- 将jQuery中的元素隐藏在表中
- 元素.隐藏变量可移植性
- 如何使一个元素隐藏在向下滚动的wordpress
- 当父元素隐藏时,如何使用jquery show()
- 高度:自动计算错误,如果元素隐藏时dom加载,然后显示
- Javascript元素隐藏不起作用
- 使元素隐藏后直接显示完成jquery
- HTML表单元素隐藏的onload javascript