2

ここで下ボタンをクリックし続けます:最後に到達するまでhttp://thomasgrist.tumblr.com/ 。下矢印はワンクリックですぐに消えるはずです。次のコードでこれを達成する方法はありますか?

私は初心者ですが、elseステートメントに条件を修正し、index =何かがこれを行うかどうかを言う必要があると思いますが、インデックスがどうあるべきか、またはこれをどのように書くかがわかりません。

$('#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");
  }
});
4

2 に答える 2

1

これを条件に追加する必要があると思います。

if($current.next().is(':last'))
于 2013-01-08T23:06:25.150 に答える
0

私はこれを行う方法を考え出しました。これがコードです。次の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());
}    
});
})
();
于 2013-01-12T23:06:17.100 に答える