jQuery - функция Глобальная переменная

0

В основном функция atm делает это так, когда вы загружаете скрипт, она отображает следующую и предыдущую кнопку плюс поток. Затем, щелкнув по нему, вы перейдете ко второму потоку в списке. Делая это, он увеличивает счетчик на 1, а затем вызывает функцию showStream (счетчик) с помощью счетчика. Я хочу сделать так, чтобы, когда вы вызываете функцию, если вы нажимаете предыдущий, и счетчик меньше 0, например -1, например, он просто покажет поток # 100, и если вы нажмете предыдущий, он покажет # 99. Также мне нужно убедиться, что если вы пройдете # 100, нажав далее, это приведет вас к номеру 1. Подумайте об этом, как будто это не начало и не конец, просто гигантская петля из них.

Есть идеи?

Функция:

  function showStream(videoIndexToShow) {
      if(videoIndexToShow >= streams.length-1) {
         jQuery("#next").hide();
       }
       else {
        jQuery("#next").show();
       }
       if(videoIndexToShow <= 0) {
         jQuery("#prev").show();
       } else {
        jQuery("#prev").show();
       }
       jQuery.each(streams, function (index, item) {  
           // $stream = <stream number>;
           // if(index == $stream){ 
           // } else {
           if(index == videoIndexToShow) {
            console.log(videoIndexToShow, index);
           jQuery("#content").empty();
           jQuery("#content").html('<object style="margin-left:0.5%;" type="application/x-shockwave-flash" height="378" width="620" id="live_embed_player_flash" data="http://www.twitch.tv/widgets/live_embed_player.swf?channel=' + item.channel.display_name+ '&auto_play=false&start_volume=25" /></object><iframe frameborder="0" scrolling="no" id="chat_embed" src="http://twitch.tv/chat/embed?channel=' + item.channel.display_name +'&amp;popout_chat=true" height="378" width="350"></iframe>');
           }
           // }
      });
  }

Другой код:

  var streams = null;
  jQuery.getJSON("https://api.twitch.tv/kraken/search/streams?q=path%20of%20exile&limit=100&callback=?", function (data) {
      streams =  data.streams;
      showStream(0);
  });

  var globalCnt = 0;
  jQuery("#next").click(function() {
      showStream(++globalCnt);
  });
  jQuery("#prev").click(function() {
      showStream(--globalCnt);
  });

Если его можно сделать вместо 100, просто сделайте это, когда он пройдет streams.length, он перезапустится с 1 или если его в 0 и вы нажмете предыдущий, он приведет вас к streams.length. Не уверен, если это возможно :)

Но любые идеи, как я это сделаю?

Нажмите Событие:

  jQuery("#prev").click(function() {
      globalCnt = globalCnt + 1 > 100 ? 1 : --globalCnt;
      showStream(globalCnt);
  });
Теги:

1 ответ

1
Лучший ответ

Просто используйте тройную showStream прямо перед вызовом showStream

globalCnt = globalCnt + 1 > 100 ? 1 : ++globalCnt;

И для меньше:

globalCnt = globalCnt - 1 < 0 ? 100 : --globalCnt;
  • 0
    Я бы сделал это в showStream? Например: showStream (globalCnt + 1> 100: 1? ++ globalCnt;)?
  • 0
    Вы можете, или вы можете сделать это прямо раньше с помощью globalCnt = \
Показать ещё 10 комментариев

Ещё вопросы

Сообщество Overcoder
Наверх
Меню