js+ca​​nvas でコードレイン効果を実現

js+ca​​nvas でコードレイン効果を実現

この記事では、js+ca​​nvasコードの雨効果の具体的なコードを参考までに共有します。具体的な内容は次のとおりです。

コード:

<!DOCTYPE html>
<html>
 <ヘッド>
  <メタ文字セット="utf-8" />
  <タイトル></タイトル>
  <スタイル タイプ="text/css">
   *{
    マージン: 0px;
    パディング: 0px;
   }
   html,本文{
    高さ: 100%;
    幅: 100%;
   }
   #キャンバス{
    表示: ブロック;
   }
  </スタイル>
 </head>
 <本文>
  <キャンバスid="キャンバス"></キャンバス>
  <script type="text/javascript">
   var キャンバス = document.getElementById('キャンバス')
   var c = キャンバス.getContext('2d')
   var cw = キャンバス.幅 = ウィンドウ.インナー幅
   var ch = キャンバス.height = ウィンドウ.innerHeight 
   
   var str = [1,2,3,4,5,6,7,8,9,0,'q','w','e','r','t','y','u','i','a','c','d','f','g','h','j','l']
   var init = 関数(){
    this.x = Math.random()*cw
    y = 0 です
    this.content1 =Math.random()*15 
    this.speed = Math.random()*5+20
    this.add = 関数(){
     this.y+=this.speed
    }
    this.reset1 = 関数(){
     this.x = Math.random()*cw
     y = 0 です
    }
   }
   //ランダムな色を定義します var gl = c.createLinearGradient(0, 0, cw, ch);
       gl.addColorStop(0, '赤');
       
       gl.addColorStop(.5, '黄色');
       
       gl.addColorStop(1, 'シアン');
   
   var arr = []
   (var i=0;i<20;i++){
    arr.push(新しいinit())
   }
   setInterval(関数(){
    
    c.fillStyle = 'rgba(0,0,0,0.05)'
    c.fillRect(0,0,cw,ch)
    //上記の 2 つの文は背景を与えるためのもので、タイマーを入れて、実行されるたびに 1 回再描画されるようにします//キャンバスをクリアするために使用されます//1、yong rgba() は色を示すために透明度を与えます。新しく描画されたキャンバスは前のキャンバスを完全には覆わないので、グラデーション効果がありますfor(var i=0;i<arr.length;i++){
     c.fillStyle = gl
     c.font = '30px Microsoft YaHei'
     
     c.fillText(str[i],arr[i].x,arr[i].y)
     
     // 彼を一番下まで落として戻ってくる if (arr[i].y>ch-20) {
      arr[i].reset1()
     }
     arr[i].add()
    }
    
    
    //
   },1000/60)
  </スクリプト>
 </本文>
</html>

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

以下もご興味があるかもしれません:
  • コードレイン効果を実現するJavaScript
  • コードレイン効果を実現するJavaScriptキャンバス
  • JS+CSS+HTML はマトリックスのテキストの落下効果に似た「コードの雨」を実現します
  • HTML+JS で「コードレイン」効果 (マトリックステキスト落下効果) のソースコードを実現
  • JS がコードレイン特殊効果を実現

<<:  Linux 最速のテキスト検索ツール ripgrep (grep の最良の代替)

>>:  MySQL バイナリログデータ復旧: 誤ってデータベースを削除した場合の詳細な説明

推薦する

HTML(CSSスタイル仕様)を読む必要があります

CSS スタイル仕様1. クラスセレクター2. タグセレクター3. IDセレクター4. CSSスタイ...

MySQLで自動作成時間と変更時間を設定する方法の例

この記事では、MySQL の自動作成時刻と変更時刻を設定する方法について説明します。ご参考までに、詳...

マークアップ言語 - 画像の置き換え

123WORDPRESS.COM HTML チュートリアル セクションに戻るには、ここをクリックして...

VScode リモート SSH リモート編集とデバッグコード

Visual Studio Code の最新の Insider バージョンには、コードのリモート デ...

Linux での scp および sftp コマンドの詳細な説明

目次序文1. SCPの使用法2. sftpを使用する3. scp と sftp の違いは何ですか?ど...

DockerをインストールしてAlibaba Cloud Image Acceleratorを構成する方法

DockerのインストールDocker はオープンソースなので、Windows システムへのインスト...

この記事では、Vue 3.0 レスポンシブの使い方を説明します。

目次ユースケースリアクティブAPI関連プロセス反応的なcreateReactiveObjectはレス...

MySQL外部キーの基本的な機能と使用方法の詳細な説明

この記事では、例を使用して、MySQL 外部キーの基本的な機能と使用方法を説明します。ご参考までに、...

このリファレンスとJavaScriptのカスタムプロパティの詳細な説明

目次1. このキーワード2. カスタム属性3. 包括的なケース1:タブの実装付録要約する1. このキ...

Vueタイマーの実装方法

この記事では、参考までにタイマーを実装するためのVueの具体的なコードを紹介します。具体的な内容は次...

フロントエンド開発者は毎日HTMLタグの理解を学ばなければならない(1)

2.1 セマンティクス化により、Webページが検索エンジンに理解されやすくなりますこの章では、We...

MySql ビュー トリガー ストアド プロシージャの詳細な説明

ビュー:一時テーブルを繰り返し使用する場合、将来の使用を容易にするために別名を付けることができます。...

Tomcat イメージをインストールして Docker に Web プロジェクトをデプロイする方法を簡単に説明します。

1. Tomcatをインストールする1. Docker HubでTomcatイメージを見つける d...

Nginx プロキシを使用してインターネットを閲覧する方法

私は通常、Tomcatや他のアプリケーションのリバースプロキシとしてnginxを使用しています。実際...

js ドラッグ アンド ドロップ テーブルでコンテンツ計算を実現する

この記事の例では、コンテンツの計算を実現するためのjsドラッグアンドドロップテーブルの具体的なコード...