如何在Elementor中添加该水波纹效果并设为指定区块背景?
解决Elementor指定Section的水波纹背景问题
问题根源
你当前的代码里嵌套了完整的<html>/<head>/<body>结构,这和Elementor页面本身的DOM结构冲突,导致波纹效果只能在HTML模块内部生效,无法作用到目标Section上。
解决步骤
1. 清理HTML模块的冗余代码
删除HTML模块里的完整文档结构(<html>、<head>、<body>、自定义的<section>和<div>),只保留依赖脚本和初始化逻辑。
2. 给目标Elementor Section设置自定义ID
- 在Elementor编辑器中选中要加波纹效果的Section
- 切换到「高级」标签页,在「CSS ID」输入框中填写一个唯一ID,比如
ripple-section
3. 替换为正确的初始化代码
把HTML模块里的代码换成下面的内容(注意替换成你自己设置的Section ID):
<script src='https://cdnjs.cloudflare.com/ajax/libs/jquery/3.4.1/jquery.min.js'></script> <script src='https://cdn.jsdelivr.net/npm/jquery.ripples@0.6.3/dist/jquery.ripples.min.js'></script> <script> jQuery(document).ready(function($) { // 替换成你设置的Section ID $('#ripple-section').ripples({ resolution: 512, dropRadius: 20, perturbance: 0.04, // 插件要求背景为图像,把你的CSS渐变转成Base64图像后填在这里 backgroundImage: 'url("替换为渐变转Base64的图像链接")' }); }); </script>
4. 调整Section的样式
- 进入Section的「样式」面板,移除原有的背景渐变设置(插件会接管背景)
- 给Section设置最小高度(比如
min-height: 400px),确保波纹效果有足够的显示空间
重要提示
- jquery.ripples插件不支持直接使用CSS渐变作为背景,必须把渐变转换成Base64格式的图像(可以用在线工具生成)
- 必须用
jQuery(document).ready()包裹初始化代码,确保页面DOM加载完成后再执行 - 绝对不要在Elementor的HTML模块里添加完整的HTML文档结构,这会破坏页面布局
内容的提问来源于stack exchange,提问作者AMG
相关产品推荐
相关产品推荐

