view source

JavaScript

document.title = 'DQX パニガルム 月間スケジュール つよさ予報';

$(function(){

  //防衛スケジュール
  var Date0 = new Date('1970/1/1').getTime();
  var Plan1 = [
    0,0,0,
    1,1,1,
    2,2,2,
    3,3,3,
    4,4,4,
    5,5,5,
    6,6,6,
    7,7,7,
];//スケジュールの順

  var planOrg = Plan1;
  var planDelay = -5;//順番ずらし
  var planText = [
    '源世鳥アルマナ:風-闇',//0
    'じげんりゅう:闇-風',//1
    '源世妃フォルダイナ:闇-風',//2
    '鉄巨兵ダイダルモス:光-土',//3
    'パニガキャッチャー:炎-土',//4
    '源世果フルポティ:光-氷',//5
    '魔妖星プルタヌス:闇-風',//6
    '堕天使エルギオス:雷-闇',//7
  ];
const days = [
  '日',
  '月',
  '火',
  '水',
  '木',
  '金',
  '土',
];

  var nowRegion = -1;
  var oldHour = -1;
  var PlanSlider = function(){
    var planElement = $('<div>');
    var Plan = planOrg;

    var now = new Date().getTime();

    var date = new Date().getDate();
    var distance =  now - Date0;
    var d = Math.floor(distance / (1000 * 60 * 60 * 24)) + planDelay;

    var index = d % planOrg.length;

    var title = '';
    var j = 0;
    Plan = Plan.concat(Plan);
    console.log(Plan);
    Plan.some(function(v, i){
      var li = $('<li>');
      var boss = $('<span>');
      var span = $('<span>');
      li.append(boss);
      li.append(span);
      if(i === index){
        nowRegion = v;
        j = 0;
      } else {
        j++;
        li.css({color:'#999'});
      }
      var odd = v % 2;
      boss.addClass('odd'+ odd);
      

      var dd = new Date().setDate(new Date().getDate() + j);
      var pm = new Date(dd).getMonth()+1;
      var pd = new Date(dd).getDate();
      var pw = days[new Date(dd).getDay()];
      li.addClass('week'+(new Date(dd).getDay()));
      var pdd = ('0'+pm).slice(-2)+'/'+ ('0'+pd).slice(-2);
      var $i = $('<i>').text(pdd +':'+pw);
      if(i>=index){
        li.prepend($i);
        planElement.append(li);
      }
      text = '';
      if(pd===10){text += ' テンの日';}
      if(pd===10 || pd===25){text += ' 邪神';}
      if(pd===1 || pd===15){text += ' 昏冥庫';}
      if(pd===1 || pd===15){text += ' ナスガルド';}
      if(pd===1){text += ' 異界闘技場';}
      if(pd===25){text += ' ショップP100';}
      boss.text(planText[v]);
      span.text(text);

    });
    var h1 = $('<h1>').text(document.title);
    var h2 = $('<h2>').text('ボスと必要耐性属性 3日毎の6時リセット ◆日付:ボス:耐性:近-遠');
    var schedule = $('<div>').addClass('schedule');
    $('#demo').append(h1);
    $('#demo').append(h2);
    $('#demo').append(schedule);
    $('.schedule').empty();
    $('.schedule')
      .prepend(planElement);
  }


  PlanSlider();
});


CSS

.schedule span{
}

li{
  display:block;
  border:1px solid #999;
  padding:4px;
}
i{
  padding:0 20px;
  width:120px;
}
.schedule .odd0{
  background-color:#eee;
}
.schedule .week0{
  border-top:2px solid #666;
}

#code{
  display:none;
}

HTML

ページのソースを表示 : Ctrl+U , DevTools : F12

view-source:https://hi0a.com/demo/-js/js-dqx-paniga/

ABOUT

hi0a.com 「ひまアプリ」は無料で遊べるミニゲームや便利ツールを公開しています。

プログラミング言語の動作デモやWEBデザイン、ソースコード、フロントエンド等の開発者のための技術を公開しています。

必要な機能の関数をコピペ利用したり勉強に活用できます。

プログラムの動作サンプル結果は画面上部に出力表示されています。

環境:最新のブラウザ GoogleChrome / Windows / Android / iPhone 等の端末で動作確認しています。

画像素材や音素材は半分自作でフリー素材配布サイトも利用しています。LINK参照。

動く便利なものが好きなだけで技術自体に興味はないのでコードは汚いです。

途中放置や実験状態、仕様変更、API廃止等で動かないページもあります。