雨滴滑落玻璃指纹的js代码
时间: 2024-10-30 07:06:14 浏览: 1
在JavaScript中模拟雨滴滑落并留下指纹效果通常涉及到动画、CSS和一些随机性。这里是一个简单的示例,使用HTML5 canvas元素来绘制动态效果:
```html
<!DOCTYPE html>
<html lang="en">
<head>
<style>
#canvas {
position: relative;
background-color: lightgray;
}
.fingerprint {
position: absolute;
width: 20px;
height: 10px;
background: black;
}
</style>
</head>
<body>
<canvas id="canvas" width="400" height="400"></canvas>
<script>
const canvas = document.getElementById('canvas');
const ctx = canvas.getContext('2d');
let raindrops = [];
function drop(x, y) {
const fingerprint = new Image();
fingerprint.src = 'path/to/fingerprint.png'; // 替换为实际的指纹图片URL
fingerprint.onload = function() {
ctx.drawImage(fingerprint, x, y);
raindrops.push({x, y});
setTimeout(() => {
if (raindrops.length > 0) {
const drop = raindrops.shift();
drop.x += 1; // 滑动步长
if (drop.x > canvas.width - fingerprint.width) {
drop.y = Math.random() * canvas.height;
} else {
ctx.clearRect(drop.x, drop.y, fingerprint.width, fingerprint.height);
}
drop();
}
}, 1000 / 60); // 1帧每秒的速度
};
}
for (let i = 0; i < 5; i++) {
drop(Math.random() * canvas.width, Math.random() * canvas.height);
}
</script>
</body>
</html>
```
这个代码首先创建了一个canvas元素,然后定义了一个`drop`函数来添加新的雨滴并滑动它们。每个雨滴都是一个小的指纹图像,当它超过屏幕宽度时,它会向上移动到一个新的随机位置。
阅读全文