JavaScript でシンプルな Web 時計を実装する

JavaScript でシンプルな Web 時計を実装する

JavaScript を使用して Web ページ クロックを実装します。効果は次の図に示されています。

まず、本体のダイヤルとポインターのリソースの読み込みを完了します。

<div><img src="../../image/clockface.jpg" alt=""></div>
<hr id="時間">
<hr id="分">
<hr id="秒">

CSS スタイルを設定します:

<スタイル>
        体{
            マージン: 0;
        }
        div{
            マージン: 0 自動;
            幅: 600ピクセル;
            高さ: 600px;
        }
        #時間{
            背景色: 黒;
            幅: 130ピクセル;
            高さ: 10px;
            位置: 固定;
            上: 295px;
            左: 50%;
            左マージン: -65px;
        }
        #分{
            背景色: 赤;
            幅: 200ピクセル;
            高さ: 8px;
            位置: 固定;
            上: 296px;
            左: 50%;
            左マージン: -100px;
        }
        #2番{
            背景色: 黄色;
            幅: 270ピクセル;
            高さ: 5px;
            位置: 固定;
            上: 297.5px;
            左: 50%;
            左マージン: -135px;
        }
</スタイル>

最後に、JS コード部分では、ループ タイマー setInterval() を使用して、1 秒ごとにメイン関数を呼び出します。メイン関数では、new Date() を使用して時間オブジェクトを作成します。.getHours(); .getMinutes(); .getSeconds() を使用して、現在の時間、分、秒を取得します。次に、CSS 組み込みの animation-rotation を使用して、ポインターの角度を変更します。

間隔を設定します(ウォッチ、1000);
var anjleSeconds=0、anjleMin=0、anjleHours=0;
関数ウォッチ() {
        var Time = 新しい Date();
        anjleSeconds=Time.getSeconds()/60*360+90;
        anjleMin=Time.getMinutes()/60*360+90;
        anjleHours=nowHours/12*360+90;
        document.getElementById("second").style.transform="rotate("+anjleSeconds+"deg)";
        document.getElementById("min").style.transform="rotate("+anjleMin+"deg)";
        document.getElementById("hour").style.transform="rotate("+anjleHours+"deg)";
    }

現在の問題は、時針、分針、秒針が hr タグで表現されているため、両端で同じ長さになっていることです。

完全なコードは次のとおりです。

<!DOCTYPE html>
<html lang="ja">
<ヘッド>
    <メタ文字セット="UTF-8">
    <title>タイトル</title>
    <スタイル>
        体{
            マージン: 0;
        }
        div{
            マージン: 0 自動;
            幅: 600ピクセル;
            高さ: 600px;
        }
        #時間{
            背景色: 黒;
            幅: 130ピクセル;
            高さ: 10px;
            位置: 固定;
            上: 295px;
            左: 50%;
            左マージン: -65px;
        }
        #分{
            背景色: 赤;
            幅: 200ピクセル;
            高さ: 8px;
            位置: 固定;
            上: 296px;
            左: 50%;
            左マージン: -100px;
        }
        #2番{
            背景色: 黄色;
            幅: 270ピクセル;
            高さ: 5px;
            位置: 固定;
            上: 297.5px;
            左: 50%;
            左マージン: -135px;
        }
    </スタイル>
</head>
<本文>
<div><img src="../../image/clockface.jpg" alt=""></div>
<hr id="時間">
<hr id="分">
<hr id="秒">
<スクリプト>
    間隔を設定します(ウォッチ、1000);
    var anjleSeconds=0、anjleMin=0、anjleHours=0;
    関数ウォッチ() {
        var Time = 新しい Date();
        anjleSeconds=Time.getSeconds()/60*360+90;
        anjleMin=Time.getMinutes()/60*360+90;
        anjleHours=Time.getHours()/12*360+90;
        document.getElementById("second").style.transform="rotate("+anjleSeconds+"deg)";
        document.getElementById("min").style.transform="rotate("+anjleMin+"deg)";
        document.getElementById("hour").style.transform="rotate("+anjleHours+"deg)";
    }
</スクリプト>
</本文>
</html>

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

以下もご興味があるかもしれません:
  • JS でウェブ時計の特殊効果を実現
  • js+html5 はキャンバス描画ウェブクロックメソッドを実装します
  • JS で実装された Web ページのカウントダウン デジタル時計効果
  • JavaScript を使用したシンプルな Web 時計の実装

<<:  Docker+Jenkinsを使用して自動的にビルドおよびデプロイする

>>:  HTTPSの最も優れた説明

推薦する

CSS3はブラウザのスクロールバーのスタイルを変更します

注意: この方法は、Webkit ベースのブラウザにのみ適用されます。ブラウザのスクロールバーが広す...

HTMLの基本概念の詳細な説明

HTMLとは何ですか? HTML は Web ページを記述するために使用される言語です。 •HTML...

デザイン理論: テキストの読みやすさと可読性

<br />少し前に、ビジネス上の必要性から、ラップトップに Souba をインストール...

Docker ファイルの保存パス、ポート マッピング操作モードの変更

コンテナの起動コマンドを取得する方法コンテナはすでに作成されていますが、その起動パラメータ(データが...

Apache Bench で Web ストレス テストを実装する方法

1. Apache Benchの紹介ApacheBench は、Apache サーバーに付属する W...

Nginx + consul + upsync を使用して動的負荷分散を実現する方法の詳細な説明

目次前提条件DNSドメイン名解決プロセス外部ネットワークマッピングnginxコア知識nginxとはア...

CentOS7 で MySQL 5.7.24 をコンパイルしてインストールする詳細なチュートリアル

目次依存関係をインストールするブーストをインストールMySQLをコンパイルしてインストールする構成依...

Vue はアップロードした画像に透かしを追加できるようになりました (アップグレード版)

vueプロジェクトでは、アップロードした画像に透かしを追加して参照できるようにするアップグレード版...

デザイン: 意志の強いデザイナー

<br />長年の専門的なアートデザイン教育を通じて「美とは何か」を学びましたが、「美を...

MySQLバイナリログを介してデータベースデータを復元する方法の詳細な説明

ウェブサイト管理者は、さまざまな理由や操作により、ウェブサイトのデータを誤って削除したり、ウェブサイ...

nginx+php実行リクエストの動作原理の詳細な説明

PHPの仕組みまず、よく耳にするcgi、php-cgi、fastcgi、php-fpmの関係を理解し...

vue WatchとComputedの使用の概要

目次01. リスナーウォッチ(1)機能(2)特性と方法(3)監視対象(4)リスニングアレイ02. 計...

Linux(中心OS7)は、Java Webプロジェクトの実行環境を構築するためにJDK、Tomcat、MySQLをインストールします。

1. JDKをインストールする1. 古いバージョンまたはシステム独自のJDKをアンインストールする...

Lvs+Nginx クラスターを使用して高並列アーキテクチャを構築する例

目次1. Lvsの紹介2. Lvs負荷分散モード2.1 NAT 2.2 ターン2.3 DRモード3....