GoogleAMP-日付カウントダウン

アンプ日付カウントダウンと呼ばれるさらに別のアンプコンポーネントは、特定の日付までの日、時間、分、秒を表示するために使用されます。 Y2K38 ( 2038)デフォルト。表示は、選択したロケールに従って実行できます。デフォルトではen(英語)です。Amp-date-countdownは、データのレンダリングにamp-mustacheテンプレートを使用します。

この章では、amp-date-countdownをより詳細に理解するために、いくつかの実用的な例を見ていきます。

amp-date-countdownを操作するには、次のスクリプトを追加する必要があります

amp-date-countdownの場合

<script async custom-element = "amp-date-countdown" 
   src = "https://cdn.ampproject.org/v0/amp-date-countdown-0.1.js">
</script>

アンプ口ひげ用

<script async custom-template = "amp-mustache" 
   src = "https://cdn.ampproject.org/v0/amp-mustache-0.1.js">
</script>

アンプ-日付-カウントダウンタグ

amp-date-countdownタグは次のとおりです-

<amp-date-countdown timestamp-seconds = "2100466648"
   layout = "fixed-height"
   height = "50">
   <template type = "amp-mustache">
      <p class = "p1">
         {{d}} days, {{h}} hours, {{m}} minutes and {{s}} seconds until
         <a href = "https://en.wikipedia.org/wiki/Year_2038_problem">
            Y2K38
         </a>.
      </p>
   </template>
</amp-date-countdown>

amp-date-countdownの属性

amp-date-countdownの属性は、次の表にリストされています-

シニア番号 属性と説明
1

end-date

カウントダウンするISO形式の日付。例:2025-08-01T00:00:00 + 08:00

2

timestamp-ms

ミリ秒単位のPOSIXエポック値。UTCタイムゾーンと見なされます。例:timestamp-ms = "1521880470000"

3

timestamp-seconds

秒単位のPOSIXエポック値。UTCタイムゾーンと見なされます。例:timestamp-seconds = "1521880470"

4

timeleft-ms

カウントダウンするために残されているミリ秒単位の値。たとえば、残り時間50時間-ms = "180,000,000"

5

offset-seconds (optional)

指定された終了日から加算または減算される秒数を示す正または負の数値。たとえば、offset-seconds = "60"は、終了日に60秒を追加します

6

when-ended (optional)

0秒に達したときにタイマーを停止するかどうかを指定します。値をstop(デフォルト)に設定して、タイマーが0秒で停止し、最終日を通過しないことを示すか、0秒に達した後にタイマーを続行する必要があることを示し続けることができます。

7

locale (optional)

各タイマーユニットの国際化言語文字列。デフォルト値はen(英語の場合)です。サポートされている値を以下に示します。

フォーマット

amp-date-countdownがカウントダウンを表示するために使用する形式を次の表に示します。

シニア番号 フォーマットと説明
1

d

日を0、1、2、3 ...無限大として表示します

2

dd

日を00,01,02,03 ...無限大として表示します

3

h

時間を0,1,2,3 ...無限大として表示します

4

hh

時間を00,01,02,03 ...無限大として表示します

5

m

分を0、1、2、3、4…無限大として表示

6

mm

分を00,01,02,03….infinityとして表示します

7

s

2番目を0,1,2,3 ...無限大として表示します

8

ss

2番目を00,01,02,03….infinityとして表示します

9

days

ロケールごとに日または日文字列を表示する

10

hours

ロケールごとに時間または時間の文字列を表示する

11

minutes

ロケールごとに分または分文字列を表示する

12

seconds

ロケールごとに秒または秒の文字列を表示する

<!doctype html>
<html amp lang = "en">
   <head>
      <meta charset = "utf-8">
      <script async src = "https://cdn.ampproject.org/v0.js"></script>
      <title>Google AMP - Amp Date-Countdown</title>
      <link rel = "canonical" href = " http://example.ampproject.org/article-metadata.html">
      <meta name = "viewport" content = "width = device-width,minimum-scale = 1,initial-scale = 1">

      <style amp-boilerplate>
         body{-webkit-animation:-amp-start 8s steps(1,end) 
            0s 1 normal both;-moz-animation:
            -amp-start 8s steps(1,end) 0s 1 normal both;-ms-animation:
            -amp-start 8s steps(1,end) 0s 1 normal both;animation:
            -amp-start 8s steps(1,end) 0s 1 normal both
         }
         @-webkit-keyframes 
         -amp-start{from{visibility:hidden}to{visibility:visible}}@-moz-keyframes 
         -amp-start{from{visibility:hidden}to{visibility:visible}}@-ms-keyframes 
         -amp-start{from{visibility:hidden}to{visibility:visible}}@-o-keyframes 
         -amp-start{from{visibility:hidden}to{visibility:visible}}@keyframes 
         -amp-start{from{visibility:hidden}to{visibility:visible}}
      </style>
      <noscript>
         <style amp-boilerplate>
            body{-webkit-animation:none;-moz-animation:none;-ms
               -animation:none;animation:none}
         </style>
      </noscript>

      <script async custom-element = "amp-date-countdown" 
         src = "https://cdn.ampproject.org/v0/amp-date-countdown-0.1.js">
      </script>

      <script async custom-template="amp-mustache" src=
         "https://cdn.ampproject.org/v0/amp-mustache-0.1.js">
      </script>
   </head>
   
   <body>
      <h1>Google AMP - Amp Date-Countdown</h1>
      <amp-date-countdown 
         timestamp-seconds = "2145683234" 
         layout = "fixed-height" 
         height = "50">
         
         <template type = "amp-mustache">
            <p class = "p1">
               {{d}} days, {{h}} hours, {{m}} minutes and 
               {{s}} seconds until
               <a href = "https://en.wikipedia.org/wiki/Year_2038_problem">
                  Y2K38
               </a>.
            </p>
         </template>
      </amp-date-countdown>
   </body>
</html>

出力

実例でamp-countdown属性offset-secondsを理解しましょう-

<!doctype html>
<html amp lang = "en">
   <head>
      <meta charset = "utf-8">
      <script async src = "https://cdn.ampproject.org/v0.js"></script>
      <title>Google AMP - Amp Date-Countdown</title>
      <link rel = "canonical" href = " http://example.ampproject.org/article-metadata.html">
      <meta name = "viewport" content = "width = device-width,minimum-scale = 1,initial-scale = 1">
      
      <style amp-boilerplate>
         body{
            -webkit-animation:-amp-start 8s steps(1,end) 
            0s 1 normal both;-moz-animation:
            -amp-start 8s steps(1,end) 0s 1 normal both;-ms-animation:
            -amp-start 8s steps(1,end) 0s 1 normal both;animation:
            -amp-start 8s steps(1,end) 0s 1 normal both
         }
         @-webkit-keyframes 
         -amp-start{from{visibility:hidden}to{visibility:visible}}@-moz-keyframes 
         -amp-start{from{visibility:hidden}to{visibility:visible}}@-ms-keyframes 
         -amp-start{from{visibility:hidden}to{visibility:visible}}@-o-keyframes 
         -amp-start{from{visibility:hidden}to{visibility:visible}}@keyframes 
         -amp-start{from{visibility:hidden}to{visibility:visible}}
      </style>
      <noscript>
         <style amp-boilerplate>
            body{
               -webkit-animation:none;-moz-animation:none;-ms
               -animation:none;animation:none}
         </style>
      </noscript>

      <script async custom-element = "amp-date-countdown" 
         src = "https://cdn.ampproject.org/v0/amp-date-countdown-0.1.js">
      </script>

      <script async custom-template = "amp-mustache" 
         src = "https://cdn.ampproject.org/v0/amp-mustache-0.1.js">
      </script>
   </head>
   <body>
      <h1>Google AMP - Amp Date-Countdown</h1>
      <amp-date-countdown 
         end-date = "2020-01-19T08:14:08.000Z" 
         offset-seconds = "-50" 
         layout = "fixed-height" 
         height = "100">

         <template type = "amp-mustache">
            <p class = "p1">
               {{d}} days, {{h}} hours, {{m}} 
               minutes and {{s}} seconds until 50 
               seconds before 2020.
            </p>
         </template>
      </amp-date-countdown>
   </body>
</html>

出力

サポートされているロケールのリスト

以下は、amp-date-countdownでサポートされているロケールのリストです。

シニア番号 名前とロケール
1

en

英語

2

es

スペイン語

3

fr

フランス語

4

de

ドイツ人

5

id

インドネシア語

6

it

イタリアの

7

ja

日本人

8

ko

韓国語

9

nl

オランダの

10

pt

ポルトガル語

11

ru

ロシア

12

th

タイ語

13

tr

トルコ語

14

vi

ベトナム語

15

zh-cn

中国語(簡体字

16

zh-tw

中国の伝統的な

ここで、上記のロケールの1つを使用してカウントダウンを表示する1つの例を試してみます。

<!doctype html>
<html amp lang = "en">
   <head>
      <meta charset = "utf-8">
      <script async src = "https://cdn.ampproject.org/v0.js"></script>
      <title>Google AMP - Amp Date-Countdown</title>
      <link rel = "canonical" href = "http://example.ampproject.org/article-metadata.html">
      <meta name="viewport" content="width = device-width, minimum-scale = 1,initial-scale = 1">

      <style amp-boilerplate>
         body{
            -webkit-animation:
            -amp-start 8s steps(1,end)0s 1 normal both;-moz-animation:
            -amp-start 8s steps(1,end) 0s 1 normal both;-ms-animation:
            -amp-start 8s steps(1,end) 0s 1 normal both;animation:
            -amp-start 8s steps(1,end) 0s 1 normal both
         }
         @-webkit-keyframes 
         -amp-start{from{visibility:hidden}to{visibility:visible}}@-moz-keyframes 
         -amp-start{from{visibility:hidden}to{visibility:visible}}@-ms-keyframes 
         -amp-start{from{visibility:hidden}to{visibility:visible}}@-o-keyframes 
         -amp-start{from{visibility:hidden}to{visibility:visible}}@keyframes 
         -amp-start{from{visibility:hidden}to{visibility:visible}}
      </style>
      <noscript>
         <style amp-boilerplate>
            body{
               -webkit-animation:none;
               -moz-animation:none;
               -ms-animation:none;
               animation:none}
         </style>
      </noscript>

      <script async custom-element = "amp-date-countdown" 
         src = "https://cdn.ampproject.org/v0/amp-date-countdown-0.1.js">
      </script>

      <script async custom-template = "amp-mustache" 
         src = "https://cdn.ampproject.org/v0/amp-mustache-0.1.js">
      </script>
   </head>
   
   <body>
      <h1>Google AMP - Amp Date-Countdown</h1>
      <amp-date-countdown 
         locale = "ja" 
         end-date = "2020-01-19T08:14:08.000Z" 
         offset-seconds = "-50" 
         layout = "fixed-height" 
         height = "100">
         
         <template type = "amp-mustache">
            <p class = "p1">
               {{d}} {{days}}, {{h}} {{hours}}, {{m}} 
               {{minutes}} and {{s}} {{seconds}} until 
               50 seconds before 2020.
            </p>
         </template>
      </amp-date-countdown>
   </body>
</html>

出力