sikaku

response

message

  • parody01の日付をページアクセス日の相対値で表示したい

response

はじめまして、メールありがとうございます。 お返事遅くなりまして申し訳ありません。

下記編集でお試しいただければと思います。 上手く行かない場合は実働ページのURLかソースを提示の上再度ご連絡いただければ幸いです。

code edit

日付表示部分

HTML
  1. <li class="system">
  2. <p data-date="5">5日後</p>
  3. </li>
  • 5部分で何日分ずらすかを指定
  • 5:5日後 -3:3日前
  • 5日後部分はJavaScript非実行時の代替テキスト

JavaScript

JavaScript
  1. <script>
  2. document.addEventListener('DOMContentLoaded',()=>{
  3. let week = '日月日水木金土';
  4. let getDate = r =>{
  5. let d = new Date();
  6. d.setDate( d.getDate() + r );
  7. return {
  8. m: d.getMonth()+1,
  9. d: d.getDate(),
  10. w: week[d.getDay()]
  11. };
  12. };
  13. document.querySelectorAll('[data-date]').forEach($tgt=>{
  14. let date = getDate( parseInt( $tgt.getAttribute('data-date') ) );
  15. $tgt.textContent = `${date.m}月${date.d}日(${date.w})`;
  16. });
  17. });
  18. </script>
  • ページ内のどこかに一回記述(HEAD内推奨)

demo

demo

3日前

180日後

今日

HTML
  1. <p data-date="5"></p>
  2. <p data-date="-3">3日前</p>
  3. <p data-date="180">180日後</p>
  4. <p data-date="0">今日</p>

:一行目の数値を変更