当前位置:首页 > JavaScript

js实现波浪线

2026-03-16 02:53:10JavaScript

使用SVG路径绘制波浪线

通过SVG的<path>元素可以绘制平滑的波浪线,利用贝塞尔曲线实现波浪效果。以下是一个简单实现:

<svg width="300" height="100" viewBox="0 0 300 100">
  <path d="M0,50 C50,0 100,100 150,50 S250,0 300,50" 
        stroke="blue" 
        fill="none"
        stroke-width="2"/>
</svg>
  • d属性中的C表示三次贝塞尔曲线
  • S命令会自动对称延续前一个控制点
  • 调整坐标值可以改变波浪的幅度和频率

Canvas动态波浪动画

使用Canvas可以实现动态波浪效果:

const canvas = document.getElementById('waveCanvas');
const ctx = canvas.getContext('2d');

let time = 0;
function animate() {
  ctx.clearRect(0, 0, canvas.width, canvas.height);
  ctx.beginPath();

  for(let x = 0; x < canvas.width; x++) {
    const y = 50 + 20 * Math.sin(x * 0.05 + time);
    ctx.lineTo(x, y);
  }

  ctx.strokeStyle = 'blue';
  ctx.lineWidth = 2;
  ctx.stroke();

  time += 0.1;
  requestAnimationFrame(animate);
}
animate();
  • 通过正弦函数生成波浪形状
  • 随时间变化产生动画效果
  • 调整振幅和频率参数可改变波浪形态

CSS波浪线效果

使用CSS伪元素和border-radius可以创建简单波浪线:

.wave-line {
  position: relative;
  height: 20px;
  overflow: hidden;
}

.wave-line::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 10px;
  background: radial-gradient(10px at 10px 10px, transparent 50%, blue 50%);
  background-size: 20px 20px;
}
  • 利用径向渐变创建重复的半圆图案
  • 调整background-size改变波浪间距
  • 适合不需要精确控制的装饰性波浪线

使用第三方库

对于复杂波浪效果,可以考虑使用专业库:

js实现波浪线

这些库提供更高级的配置选项和性能优化,适合生产环境使用。

标签: 波浪js
分享给朋友:

相关文章

js实现选项卡

js实现选项卡

实现选项卡的基本思路 选项卡通常由一组标签和对应的内容面板组成。点击标签时,显示对应的内容面板,隐藏其他面板。实现这一效果需要结合HTML结构、CSS样式和JavaScript交互逻辑。 HTML结…

js手势实现

js手势实现

手势识别实现方法 在JavaScript中实现手势识别通常涉及监听触摸事件(touchstart、touchmove、touchend)或鼠标事件(mousedown、mousemove、mouseu…

js实现上传文件

js实现上传文件

文件上传的基本实现 使用HTML的<input type="file">元素配合JavaScript的File API可以实现文件上传功能。 <input type="file"…

js实现原理

js实现原理

JavaScript 实现原理 JavaScript 是一种解释型语言,其实现原理涉及多个核心组件和运行机制,包括引擎、运行时环境、事件循环等。 引擎与解释执行 现代 JavaScript 引擎(如…

js实现排序

js实现排序

数组排序方法 JavaScript提供了内置的sort()方法用于数组排序。默认情况下,sort()将元素转换为字符串并按照Unicode码点排序。对于数字排序,需传入比较函数。 const num…

js实现截图

js实现截图

使用HTML2Canvas库实现截图 HTML2Canvas是一个流行的JavaScript库,可以将网页元素或整个页面转换为Canvas图像。安装方式: npm install html2canv…