function resize(){ var canvas2 = document.getElementById('myCanvas2'); canvas2.width = window.innerWidth; } window.onresize = function(){ resize(); } resize(); ;(function(){ wave2(); })(); /* 第二条 */ function wave2(){ var waveWidthB = 7680, offsetB = 0, waveHeightB = 100, //波浪高度 waveCountB = 6, //波浪个数 startXB = -3840, startYB = 200, //canvas 高度 progressB = 100, //波浪位置的高度 d2B = waveWidthB / waveCountB, dB = d2B / 2, hdB = dB / 2, cB = document.getElementById("myCanvas2"), ctxB = cB.getContext("2d"); function tickB() { offsetB -= 5; if (-1 * offsetB === d2B) offsetB = 0; ctxB.clearRect(0, 0, cB.width, cB.height); ctxB.globalAlpha = 1; ctxB.fillStyle = '#fff'; ctxB.beginPath(); var offsetYB = startYB - progressB; ctxB.moveTo(startXB - offsetB, offsetYB); for (var i = 0; i < waveCountB; i++) { var dxB = i * d2B; var offsetXB = dxB + startXB - offsetB; ctxB.quadraticCurveTo(offsetXB + hdB, offsetYB + waveHeightB, offsetXB + dB, offsetYB); ctxB.quadraticCurveTo(offsetXB + hdB + dB, offsetYB - waveHeightB, offsetXB + d2B, offsetYB); } ctxB.lineTo(startXB + waveWidthB, 3000); ctxB.lineTo(startXB, 3000); ctxB.fill(); setTimeout(tickB,20); //速度 //requestAnimationFrame(tick); } tickB(); }