ホームページ JS特殊効果 html5特殊効果 HTML5 マグマ アニメーションの背景効果

HTML5 マグマ アニメーションの背景効果

HTML5 マグマ アニメーションの背景効果

HTML5 マグマ アニメーションの背景効果

<!doctype html>
<html>
<頭>
<メタ文字セット="utf-8">
<title>設置可能なアニメーション 画のプロパティの HTML5 岩浆アニメーション背景特色</title>

<スタイル>
@charset "UTF-8";
*、 *:ビフォアーアフター {### ボックスのサイズ設定: ボーダーボックス;
}

体 {### パディング: 0;
マージン: 0;
オーバーフロー: 非表示;
フォントファミリー: 'Roboto'、サンセリフ;
}

キャンバス {### 幅: 100vw;
高さ: 100vh;
}

h1 {
位置: 絶対;
z インデックス: 1;
幅: 100%;
左: 0;
トップ: 50%;
-webkit-transform: 翻訳Y(-50%);
変換:translateY(-50%);
ミックスブレンドモード: オーバーレイ;
色: rgba(0, 0, 0, 0.3);
行の高さ: 0;
フォントサイズ: 16px;
文字間隔: 4px;
テキスト整列: 中央;
テキスト変換: 大文字;
変換:translateY(-50%);
カーソル: ポインタ;
-webkit-transition: カラー .2s イーズインアウト;
トランジション: カラー .2s イーズインアウト;
-webkit-user-select: なし;
-moz-user-select: なし;
-ms-user-select: なし;
ユーザー選択: なし;
}
h1:ホバー {
色: rgba(0, 0, 0, 0.8);
}
</style>
</head>
<本文>

<スクリプト src="js/chroma.min.js"></script>
<スクリプト src="js/dat.gui.min.js"></script>

<canvas id="canvas"></canvas>

<h1>床は溶岩です</h1>

<スクリプト>
'厳密を使用';

function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("クラスを関数として呼び出すことはできません"); } }

変数設定 = {
振幅X: 150,
振幅Y: 20,
行数: 30,
開始カラー: '#500c44',
終了色: '#b4d455'
};

var c = document.getElementById("canvas");
var ctx = c.getContext("2d");
var winW = window.innerWidth;
var winH = window.innerHeight;
var パス = [];
var color = [];
var マウス Y = 0;
varmouseDown = false;
var 時間 = 0;
var カーブ = 未定義;
var 速度 = 未定義;

var パス = 関数 () {
関数パス(y, color) {
_classCallCheck(this, パス);

this.y = y;
this.color = color;
this.root = [];
this.create();
this.draw();
}

Path.prototype.create = function create() {
var rootX = 0;
var rootY = this.y;

this.root = [{ x: rootX, y: rootY }];

while (rootX var Casual = Math.random() > 0.5? 1 : -1;
var x = parseInt(settings.amplitudeX / 2 Math.random() * settings.amplitudeX / 2);
var y = parseInt(rootY カジュアル * (settings.amplitudeY / 2 Math.random() * settings.amplitudeY / 2));
rootX = x;
var 遅延 = Math.random() * 100;
this.root.push({ x: rootX, y: y, height: rootY, カジュアル: カジュアル, 遅延: 遅延 });
}
};

Path.prototype.draw = 関数draw() {
ctx.beginPath();
ctx.moveTo(0, winH);

ctx.lineTo(this.root[0].x, this.root[0].y);

for (var i = 1; i
var x = this.root[i].x;
var y = this.root[i].y;
var nextX = this.root[i 1].x;
var nextY = this.root[i 1].y;

var xMid = (x nextX) / 2;
var yMid = (y nextY) / 2;
var cpX1 = (xMid x) / 2;
var cpY1 = (yMid y) / 2;
var cpX2 = (xMid nextX) / 2;
var cpY2 = (yMid nextY) / 2;

ctx.quadraticCurveTo(cpX1, y, xMid, yMid);
ctx.quadraticCurveTo(cpX2, nextY, nextX, nextY);
}

var lastPoint = this.root.reverse()[0];
this.root.reverse();
ctx.lineTo(lastPoint.x, lastPoint.y);
ctx.lineTo(winW, winH);
ctx.fillStyle = this.color;
ctx.fill();
ctx.closePath();
};

復路;### }();

/* 初期化 */###
var パス = 未定義;
関数 init() {
c.width = winW;
c.height = winH;
パス = [];

color = chroma.scale([settings.startColor, settings.endColor]).mode('lch').colors(settings.lines);

document.body.style = 'background: ' settings.startColor;

for (var i = 0; i Paths.push(new Path(winH / settings.lines * i, color[i]));
settings.startY = winH / settings.lines * i;
}
}

/* サイズ変更に成功 */
window.addEventListener('resize', function () {
winW = window.innerWidth;
winH = window.innerHeight;
c.width = winW;
c.height = winH;
初期化();### });
window.dispatchEvent(new Event("resize"));

/* 与える */### 関数 render() {
c.width = winW;
c.height = winH;

カーブ = マウスダウン ? 2 : 4;
速度 = マウスダウン ? 6 : 0.8;

時間 = マウスダウン ? 0.1 : 0.05;

Paths.forEach(関数 (パス, i) {
path.root.forEach(関数 (r, j) {
if (j % 曲線 == 1) {
var move = Math.sin(時間 r.遅延) * 速度 * r.casual;
r.y -= 移動 / 2 - 移動;
}
if (j 1 % 曲線 == 0) {
var move = Math.sin(時間 r.遅延) * 速度 * r.casual;
r.x = 移動 / 2 - 移動 / 10;
}
});

path.draw();
});

requestAnimationFrame(render);
}
与える();###
/* マウスダウン */
'mousedown touchstart'.split(' ').forEach(function (e) {
document.addEventListener(e, function () {
マウスダウン = true;
});
});

/* マウスアップ */
'mouseup、mouseleave、touchend'.split(' ').forEach(function (e) {
document.addEventListener(e, function () {
マウスダウン = false;
});
});

/* マウスムーブ */
'mousemove touchmove'.split(' ').forEach(function (e) {
document.addEventListener(e, function (e) {
マウス Y = e.clientY || e.touches[0].clientY;
});
});

/* データ GUI */
var gui = 関数 datgui() {
var gui = 新しい dat.GUI();
// dat.GUI.toggleHide();
gui.closed = true;
gui.add(設定, "振幅X", 40, 200).step(20).onChange(function (newValue) {
初期化();### });
gui.add(設定, "振幅Y", 0, 100).step(1).onChange(function (newValue) {
初期化();### });
gui.add(設定, "行", 5, 50).step(1).onChange(function (newValue) {
初期化();### });
gui.addColor(settings, "startColor").onChange(function (newValue) {

初期化();### document.querySelector('h1').innerHTML = 'または任意のもの';
});
gui.addColor(設定, "endColor").onChange(function (newValue) {
初期化();### document.querySelector('h1').innerHTML = 'または任意のもの';
});

GUI を返す;
}();
</スクリプト>

</本文>
</html>

これは、アニメーション プロパティを設定できる優れた HTML5 マグマ アニメーション背景効果です。Web ページの右上にあるメニューを展開して、アニメーションの振幅、色、その他のプロパティを設定します。

免責事項

このサイトのすべてのリソースはネチズンによって提供されたもの、または主要なダウンロード サイトによって転載されたものです。ソフトウェアの整合性をご自身で確認してください。このサイトのすべてのリソースは学習の参考のみを目的としています。商業目的で使用しないでください。そうでない場合は、すべての結果に対して責任を負うことになります。侵害がある場合は、削除するためにご連絡ください。連絡先情報: admin@php.cn

関連記事

HTMLの「」と「背景」を効果的に使うには? HTMLの「」と「背景」を効果的に使うには?

31 Dec 2024

および/または の背景を利用する方法 このガイドでは、HTML に背景を適用するときのさまざまなシナリオについて説明します。

CSS のみを使用して、透明な背景を持つ滑らかなアニメーションの円描画効果を作成する方法 CSS のみを使用して、透明な背景を持つ滑らかなアニメーションの円描画効果を作成する方法

25 Oct 2024

CSS のみで境界半径と透明な背景を使用して円をアニメーション化する問題:アニメーション化された境界半径の円を作成する方法...

ストリップタグ以外の HTML 特殊文字コードを効果的に削除するにはどうすればよいですか? ストリップタグ以外の HTML 特殊文字コードを効果的に削除するにはどうすればよいですか?

18 Oct 2024

効果的な HTML 特殊文字の削除:strip_tags を超えた拡張strip_tags は HTML タグを効果的に削除しますが、HTML 特殊文字コードが残る可能性があります。 「 」や「©」などのコードは、RSS フィード ファイルの保存を中断する可能性があります。

HTML の `` と `` の背景はどのように異なり、複数の背景を効果的に使用するにはどうすればよいですか? HTML の `` と `` の背景はどのように異なり、複数の背景を効果的に使用するにはどうすればよいですか?

24 Dec 2024

に背景を適用する および/または または 要素に背景を適用するときに、次のことに気づくかもしれません...

CSS を使用して特定のボタンのマウス ホバー効果を無効にするにはどうすればよいですか? CSS を使用して特定のボタンのマウス ホバー効果を無効にするにはどうすればよいですか?

27 Nov 2024

特定のボタンのマウス ホバー効果を無効にする CSSAiming を使用して、Web ページ内の特定のボタンのマウス ホバー効果を無効にすると、...

文字列から HTML 特殊文字を効果的に削除するにはどうすればよいですか? 文字列から HTML 特殊文字を効果的に削除するにはどうすればよいですか?

18 Oct 2024

文字列から HTML 特殊文字を削除する RSS フィードを作成するときは、互換性を確保するために HTML タグと特殊文字を削除することが重要です。 strip_tags() はタグを効果的に削除しますが、多くの場合、HTML 特殊文字が残ります。

古いブラウザでも CSS を使用して背景のぼかし効果を作成する方法 古いブラウザでも CSS を使用して背景のぼかし効果を作成する方法

28 Oct 2024

CSS: Backdrop-Filter 要素の背景にぼかしやその他の効果を有効にする CSS 機能である PolyfillBackdrop-filter は、ほとんど残っています...

テンプレート関数メンバーの部分特殊化により「不完全な型の無効な使用」が発生するのはなぜですか? テンプレート関数メンバーの部分特殊化により「不完全な型の無効な使用」が発生するのはなぜですか?

03 Dec 2024

部分的なテンプレート特殊化での「不完全な型の無効な使用」エラーテンプレート関数の部分的な特殊化を作成しようとすると...

マウスオーバー時に jQuery を使用して背景色をアニメーション化するときの「無効なプロパティ」エラーを修正する方法 マウスオーバー時に jQuery を使用して背景色をアニメーション化するときの「無効なプロパティ」エラーを修正する方法

14 Dec 2024

マウスオーバーで jQuery を使用して背景色の変化をアニメーション化する方法背景色の変化に対して jQuery アニメーションを実装しようとすると...

See all articles See all articles

Hot Tools

HTML5 キャンバスの心ときめくアニメーション特殊効果

HTML5 キャンバスの心ときめくアニメーション特殊効果

HTML5 キャンバスのハートのはためきアニメーション特殊効果は、ブラウザで直接開いてハートを確認できる生成されたアニメーションです。

H5 パンダバウンスゲームのソースコード

H5 パンダバウンスゲームのソースコード

HTML5 Mobile Panda もクレイジーなゲームのソース コードです。ゲームの説明: 画面を長押ししてパンダのバネの強さを調整し、石柱にジャンプします。川に落ちたらゲーム終了です。

HTML5 バレンタインデー ボックス アニメーションの特殊効果

HTML5 バレンタインデー ボックス アニメーションの特殊効果

svgをベースに、バレンタインデーのラブボックスギフトを開けるアニメーションと、ラブボックスアニメーションの特殊効果を描画します。

H5 3D ローリング ボール ゲームのソース コード

H5 3D ローリング ボール ゲームのソース コード

HTML5 クールな 3D ボールローリングモバイルゲームコードのダウンロード。ゲーム紹介: カラー ボールが転がり、マウスまたは携帯電話のタッチ スクリーンでカラー ボールをドラッグすることで、カラー ボールの現在のトラックを制御します。シンプルで操作しやすいモバイルゲームのソースコードです。