ダイナミッククロックを実現するJS+CSS

ダイナミッククロックを実現するJS+CSS

この記事の例では、動的な時計を実装するためのJS + CSSの具体的なコードを参考までに共有しています。具体的な内容は次のとおりです。

知識ポイントの要約:

document.querySelector()メソッドは、指定された CSS セレクターに一致するドキュメント内の要素を返します。

setInterval()メソッドは、指定された期間 (ミリ秒単位) で関数を呼び出したり、式を評価したりします。
setInterval() メソッドは、clearInterval() が呼び出されるかウィンドウが閉じられるまで、関数を繰り返し呼び出します。 setInterval() によって返される ID 値は、clearInterval() メソッドのパラメーターとして使用できます。

HTML+js部分

<!DOCTYPE html>
<html lang="ja">

<ヘッド>
 <メタ文字セット="UTF-8">
 <meta http-equiv="X-UA-compatible" content="IE=edge">
 <meta name="viewport" content="width=デバイス幅、初期スケール=1.0">
 <link rel="スタイルシート" href="shiying.css" >
 <title>ドキュメント</title>
</head>

<本文>
 <div class="時計">
 <div class="時間">
 <div class="hr" id="hr"></div>
 </div>
 <div class="min">
 <div class="mn" id="mn"></div>
 </div>
 <div class="sec">
 <div class="sc" id="sc"></div>
 </div>
 </div>
 <script type="text/javascript">
 定数度 = 6;
 定数hr = document.querySelector('#hr');
 定数 mn = document.querySelector('#mn');
 定数sc = document.querySelector('#sc');

 間隔を設定する(() => {

 day = new Date();
 hh = day.getHours() * 30 とします。
 mm = day.getMinutes() * deg; とします。
 ss = day.getSeconds() * deg; とします。

 hr.style.transform = `rotateZ(${(hh) + (mm / 12)}deg)`;
 mn.style.transform = `rotateZ(${mm}deg)`;
 sc.style.transform = `rotateZ(${ss}deg)`;
 })

 </スクリプト>
</本文>

</html>

CSS部分

*{
 マージン:0;
 パディング:0;
 ボックスのサイズ: 境界線ボックス;
}
体{
 ディスプレイ: フレックス;
 コンテンツの中央揃え: 中央;
 アイテムの位置を中央揃えにします。
 最小高さ: 100vh;
 背景: #091921;
}
。クロック{
 幅: 350ピクセル;
 高さ: 350ピクセル;
 ディスプレイ:フレックス;
 コンテンツの中央揃え: 中央;
 アイテムの位置を中央揃えにします。
 背景: url(1613462007944.png);
 背景サイズ: カバー;
 境界線:4px 実線 #091921;
 境界線の半径: 50%;
 ボックスシャドウ: 0 -15px 15px rgba(255,255,255,0.05),
 インセット 0 -15px 15px rgba(255,255,255, 0.05),
 0 -15px 15px rgba(0,0,0,0.05),
 インセット 0 -15px 15px rgba(0,0,0, 0.05);
}
.clock:前
{
 コンテンツ:"";
 位置: 絶対;
 幅: 15px;
 高さ: 15px;
 背景: #fff;
 境界線の半径: 50%;
 zインデックス:10000;

}
.時計 .時間、
.時計 .分、
.時計 .秒
{
 位置: 絶対;

}
.clock .hour, .hr{
 幅: 160ピクセル;
 高さ: 160px;
}
.clock .min, .mn{
 幅: 190ピクセル;
 高さ: 190ピクセル;
}
.clock .sec, .sc{
 幅: 230ピクセル;
 高さ: 230px;
}
.hr、.mn、.sc{
 ディスプレイ: フレックス;
 コンテンツの中央揃え: 中央;
 位置: 絶対;
 境界線の半径: 50%;
}
.hr:前{
 コンテンツ:"";
 位置: 絶対;
 幅: 8px;
 高さ: 80px;
 背景: #ff105e;
 zインデックス: 10;
 境界線の半径: 6px 6px 0 0;
}
.mn:前{
 コンテンツ:"";
 位置: 絶対;
 幅: 4px;
 高さ: 90px;
 背景: #fff;
 zインデックス: 11;
 境界線の半径: 6px 6px 0 0;
}
.sc:前{
 コンテンツ:"";
 位置: 絶対;
 幅: 4px;
 高さ: 150px;
 背景: #fff;
 zインデックス:12;
 境界線の半径: 6px 6px 0 0;
}

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • jsはシンプルなデジタル時計効果を実現します
  • HTML5 キャンバス js (デジタル時計) サンプルコード
  • JavaScript HTML 時計効果を簡単に実装する 5 つのステップ
  • Tik Tokのコンパス時計を実装するJavaScript
  • シンプルな時計のサンプルコードを実装するJavaScript
  • JavaScript に基づく動的な時計効果の実現
  • シンプルな時計効果の js 実装コード
  • 動的な時計効果を実現するJavascript
  • JavaScript 入門: ダイナミック クロック、完全なクロックを表示するいくつかの方法、新年までのカウントダウン
  • JS で実装された Web ページのカウントダウン デジタル時計効果

<<:  Tomcat ディレクトリ構造の詳細な紹介

>>:  MySQL 5.7.17 でパスワードを忘れた場合の対処方法

推薦する

easycomモードでUNI-APPコンポーネントを呼び出す際に習得する必要がある実践的なスキル

この記事は議論の出発点となることを目的としています。詳細なドキュメントと easycom の仕様につ...

Maven で tomcat8-maven-plugin プラグインを使用する詳細なチュートリアル

オンラインで多くの記事を検索しましたが、解決策は見つかりませんでした。次のように、tomcat7-m...

nginx と Tencent Cloud の無料証明書を使用して https を作成する方法

httpsを取得する方法を勉強しています。最近、Tencent Cloud が提供する無料の SSL...

Vue の新しいパートナー TypeScript クイックスタート実践記録

目次1. 公式の足場を使って構築する2. プロジェクトディレクトリ分析3. TypeScript の...

要素の読み込み効果を実現するための純粋なHTML+CSS

これは Element UI の読み込みコンポーネントのエフェクトです。かっこいいですね。実装してみ...

HTML にオーディオファイルを挿入してブラウザで再生する場合の互換性の問題

HTML にオーディオ ファイルを挿入した後 (mp3 ファイルを再生した後) に発生したいくつかの...

IEウェブページのポップアップウィンドウの共通パラメータは自分で設定できます

ポップアップは、現在のウィンドウにメニューツールバーがあるかどうかとは関係ありません。ページにスクリ...

MySQL はエンタープライズレベルのログ管理、バックアップ、リカバリの実践的なチュートリアルを実装します

背景事業が発展するにつれ、会社の事業内容や規模は拡大し続け、ウェブサイトには大量のユーザー情報やデー...

ZabbixはSNMPに基づいてLinuxホストを監視します

序文: Linux ホストは、エージェント プログラムをインストールする場合でも、SNMP を使用す...

React antd タブの切り替えによりサブコンポーネントが繰り返し更新される

説明する: Tabs コンポーネントが切り替わると、TabPane に含まれる同じサブコンポーネント...

Vue シングルページ SEO の 4 つのソリューションについての簡単な説明

目次1.Nuxtサーバーサイドレンダリングアプリケーションの展開(SSRサーバーレンダリング)利点:...

nginx + fastcgi を使用して画像認識サーバーを実装する

背景ディープラーニング モデルの推論には、特定のデバイスが使用されます。マシンは、モデルの読み込み、...

DockerコンテナにPythonアプリケーションをデプロイするプロセスの分析

シンプルなアプリケーションの展開1. ディレクトリ構造: └── Pythonpro #ディレクトリ...

JavaScript デザインパターン コマンドパターン

コマンド パターンは、JavaScript デザイン パターンにおける動作デザイン パターンです。定...

アコーディオン効果を実現するネイティブ js

実際のWebページ開発でも、アコーディオンは頻繁に登場します。簡単なアコーディオンを作ったのですが、...