前提・実現したいこと
リンク内容
上記サイトのような画面奥にあるモデルの写真が中央からフェードインしてくるアニメーションを実装したいため、背景画像の上にマスクを設定しておりますが、設定したマスクを動かすことができません。
原因わかりますでしょうか?
発生している問題・エラーメッセージ
エラーメッセージ
該当のソースコード
<!DOCTYPE html> <html lang="jp"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <link rel="stylesheet" href=""> <link type="text/css" rel="stylesheet" href="http://code.jquery.com/ui/1.10.3/themes/cupertino/jquery-ui.min.css" /> <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css" integrity="sha384-Vkoo8x4CGsO3+Hhxv8T/Q5PaXtkKtu6ug5TOeNV6gBiFeWPGFN9MuhOf23Q9Ifjh" crossorigin="anonymous"> </head> <body> <canvas id="canvas"></canvas> <style> html, body { width: 100%; height: 100%; } body { margin: 0; padding: 0; } canvas { background-color: white; height: 100%; width: 100%; overflow: hidden; } </style> <script src="https://cdnjs.cloudflare.com/ajax/libs/gsap/3.2.6/gsap.min.js"></script> <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.4/jquery.min.js"></script> <script src="https://code.createjs.com/1.0.0/createjs.min.js"></script> <script src="https://cdn.jsdelivr.net/npm/popper.js@1.16.0/dist/umd/popper.min.js" integrity="sha384-Q6E9RHvbIyZFJoft+2mJbHaEWldlvI9IOYy5n3zV9zzTtmI3UksdQRVvoxMfooAo" crossorigin="anonymous"></script> <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/js/bootstrap.min.js" integrity="sha384-wfSDF2E50Y2D1uUdj0O3uMBJnjuUD4Ih7YwaYd1iqfktj0Uod8GCExl3Og8ifwB6" crossorigin="anonymous"></script> <script> (function () { var canvas = document.getElementById('canvas'); canvas.width = 960; canvas.height = 540; var centerX = canvas.width / 2; var centerY = canvas.height / 2; var context = canvas.getContext('2d'); var bgImg = new Image(); bgImg.onload = function () { context.globalCompositeOperation = 'source-over'; context.drawImage(bgImg, 0, 0, canvas.width, canvas.height); }; bgImg.src = '![背景画像](440135c39dccbed93ddf199aa79d377a.jpeg)'; var size = 50; function drawMask() { size += 1; // globalCompositeOperation に destination-in を設定 context.save() context.globalCompositeOperation = 'destination-in'; context.arc(centerX, centerY, size, 0, Math.PI * 2); context.fill(); // マスクを大きくする // save(); 時点での描画状態を復元 context.restore(); window.requestAnimationFrame(drawMask); } })(); </script> </body> </html>
試したこと
ここに問題に対して試したことを記載してください。
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。