JSベースの手持ち連射機能+テキスト揺れ特殊効果コードの簡単実装

JSベースの手持ち連射機能+テキスト揺れ特殊効果コードの簡単実装

少し前にTikTokで揺れる連打が流行っていたので真似してみることにしました。さっそく効果をみてみますと…

エフェクト表示

ここに画像の説明を挿入

GIF 画像は少しぼやけて見えますが、実際の効果は良好です。

一見、何をすればいいか分からないので、まずは実装する機能を分解してみましょう。

  1. フルスクリーンの黒い背景を生成し、テキストを書き込み、コンテンツを中央に配置する
  2. シームレスなスクロールを実現
  3. テキストの揺れ効果を実現する
  4. 90度回転(デフォルトでは水平表示)

コードは次のとおりです

.html

 <div class="弾幕ボックス">
  <div class="text">揺れる字幕</div>
 </div>

.css

.弾幕ボックス{
  幅: 100vh;
  高さ:100vw;
  変換元: 50vw 50vw;
  変換: 回転(90度);
  空白: ラップなし;
  ディスプレイ: フレックス;
  コンテンツの中央揃え: 中央;
  アイテムの位置を中央揃えにします。
  背景色: #000;
  オーバーフロー: 非表示;
  アニメーション: aniShake 0.5 秒線形無限;
 }

 。文章 {
  幅: 100%;
  フォントサイズ: 50px;
  色: #FFF;
  アニメーション: aniMove 5秒線形無限;
  アニメーション塗りつぶしモード: forwards;
 }

 /* テキストのスクロール */
 @keyframes aniMove {
  0% { 変換: translateX(100%); }
  100% { 変換: translateX(-100%); }
 }
 
 /* 揺れる字幕効果*/
 @keyframes アニシェイク {
  0%、33% { テキストシャドウ: 3px -3px 0px #FE008E、-5px 5px 0px #00FFFF; }
  34%、66% { テキストシャドウ: 5px -5px 0px #FE008E、-3px 3px 0px #00FFFF; }
  67%、100% { テキストシャドウ: 3px -3px 0px #00FFFF、-5px 5px 0px #FE008E; }
 }

この時点で、揺れやスクロール効果のある手持ち弾幕機能が実現しました。

機能は複雑ではありません。最初はキャンバスで描画することを考えましたが、ミニプログラムではキャンバスなどのネイティブコンポーネントが比較的高いレベルにあります。特殊効果を切り替えたり、ポップアップウィンドウを書いて設定を変更したりしたい場合は、簡単ではありません。そこで私は CSS3 で調べて書いてみました。ただ言いたいのは、「CSS3 は素晴らしい!!!」ということです。

ミニプログラムでの設定効果のプレビューがさらに充実

最近、小さなプログラムを作成し、手持ち連射機能を追加し、より多くの機能を実現しました。また、設定したコンテンツを友人と共有することもできます。コードをスキャンして体験し、サポートしてください...

ここに画像の説明を挿入

要約: 初めてブログを書きました。午後中ずっと削除とカットに費やしました。記事を書くのはあまり得意ではありませんが、それでも完成しました。結局、人は自分で成長することを学ばなければなりません...

JS ベースの手持ち連射機能 + テキスト揺れ特殊効果コードを簡単に実装する方法についての記事はこれで終わりです。より関連性の高い js 手持ち連射テキスト揺れコンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • JS で実装したビデオ弾幕スクリーン効果の例
  • JavaScript ベースで弾幕特殊効果を実現
  • JavaScript の弾丸スクリーン効果のシンプルな実装
  • JavaScript ライブコメント連発カット画像機能ポイント収集効果コード

<<:  Dockerのヘルス検出メカニズム

>>:  Nginx で Brotli 圧縮アルゴリズムを有効にする方法の例

推薦する

上部の固定ナビゲーションバーによって CSS アンカーの配置がブロックされる問題の解決方法

多くのウェブサイトでは、ユーザーが簡単に検索したり他のページに移動したりできるように、上部にナビゲー...

Vueデータプロキシの詳細な説明

目次1. これからお話しするのは、フロントエンド担当者がvue-cliで完了できるソリューション、デ...

VUE 応答性原理の詳細な説明

目次1. 応答原理の基盤2. コアオブジェクト: Dep と Watcher 3. 依存関係を収集し...

ログインスライダー検証を実装するJavaScript

この記事では、ログインスライダー検証を実装するためのJavaScriptの具体的なコードを参考までに...

HTML でよく使われるタグの概要 (必読)

コンテンツ詳細タグ: <h1>~<h6>タイトルタグ<pre>テ...

Vue2.x と Vue3.x のルーティングフックの違いの詳細な説明

目次vue2.xプレコンセプト:ルーティングフックのカテゴリルーティングとコンポーネントの概念(フッ...

電子メールの HTML ページを作成するための原則の概要

HTML メールはこのサイト上の独立したホスト ページではないため、他の誰かによってホストされていま...

Ubuntu 18.04 に mysql5.7.23 をインストールするチュートリアル

この記事では、Ubuntu18.04にmysql5.7.23をインストールする具体的な方法を参考まで...

TypeScript の条件型に関する詳細な読書と実践記録

目次ジェネリック型での条件型の使用ツールタイプ脱出ポッド矢印関数で条件型を使用する型推論による条件型...

MacにMySQLデータベースをインストールする方法を教えます

Mac 用 MySQL をダウンロード: https://downloads.mysql.com/a...

mysql5.7 のエンコーディングを utf8mb4 に設定する方法

最近、問題に遭遇しました。モバイル端末の絵文字や一部の絵文字は 4 バイトですが、UTF-8 は 3...

MySQL thread_stack 接続スレッドの最適化

MySQL は、ネットワーク経由だけでなく、名前付きパイプ経由でも接続できます。MySQL への接続...

デザインにおいて無視できないインタラクティブデザインにおける製品状態の分析

製品デザインのプロセスにおいて、デザイナーは常に写真を非常に美しくすることを好みます。仮想ページのコ...

reactにおけるstateの略語の詳細な説明

序文国家とは何か私たちは皆、React はステート マシンであると言います。それはどのように反映され...