JQuery условия - PullRequest
       14

JQuery условия

2 голосов
/ 11 марта 2011

Итак, я делаю что-то вроде ползунка, и у меня возникают проблемы с тем, чтобы он скрывал кнопку вниз, когда она полностью опущена, и наоборот, с кнопкой вверх.

var amount = $('slide').attr('number');
$('span#up').click(function(){
$('div#container').animate({marginTop: '+=' + playerH});
position--;
if (position < amount){
    $('span#up').hide();}
else {
    $('span#up').show();
    }
});

$('span#down').click(function(){
$('div#container').animate({marginTop: '-=' + playerH});
position++;console.log(amount);
if (position > amount){
    $('span#down').hide();}
else {
    $('span#down').show();
    }

По сути, переменная количества - это количество слайдов внутри контейнера.Я создаю элемент слайда и помещаю число = "4", если это четвертый слайд, чтобы он мог подсчитать количество слайдов.

Надеюсь, я достаточно ясен: D.

Ответы [ 2 ]

0 голосов
/ 11 марта 2011

Часть вашей проблемы заключается в том, что вы не отображаете #up при нажатии вниз и #down при нажатии вверх. Как только один из них будет скрыт, как бы вы показали их в своем коде? Я бы сгруппировал код show / hide в одну функцию и вызвал бы его из обоих обработчиков событий, что-то вроде (упрощенный псевдокод, просто чтобы дать вам идею):

var totalSlides = 4;
var position = 0;

function checkStuff( pos )
{
  $('div#container').animate({marginTop: '+=' + playerH});

  if ( pos === 0 )
  {
    $('span#up').hide();
  }
  else
    $('span#up').show();

  if ( pos === totalSlides )
  {
    $('span#down').hide();
  }
  else
    $('span#down').show();      
}

$('span#down').click(function(){

  position++;
  checkStuff( position );

});

$('span#up').click(function(){

  position--;
  checkStuff( position );

});
0 голосов
/ 11 марта 2011

Я не знаю, в чём ваша проблема, но вы должны показывать кнопку «вверх», когда нажата кнопка «вниз» (и наоборот)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...