Bricks 整页滚动(FullPage.js):把一页切成全屏区块
FullPage.js 是经典的整页滚动库。把它集成进 Bricks,可以让每个 Section 占满一屏、滚轮逐屏切换——适合极简产品页、演示页、活动页。
本文基于 BricksLabs 公开免费教程实译,代码完整可复用。原文:How to integrate FullPage.js with Bricks
思路
- 在子主题
functions.php入队 FullPage.js(库文件 + 初始化) - 用 CSS 隐藏非当前屏的 section
- 用 JS 初始化 fullpage 实例,
sectionSelector指向#brx-content > section
代码一:入队 FullPage.js
add_action( 'fullpagejs_enqueue_scripts', function() {
// 只在前端和 canvas 加载,不在构建器面板加载(避免影响构建器)
if ( ! bricks_is_builder_main() ) {
// Fullpage
wp_enqueue_script( 'fullpage', get_stylesheet_directory_uri() . ...
代码二:关键 CSS
让内容容器块级显示、非当前 section 透明:
body #brx-content {
display: block;
min-height: 100vh;
}
body.bricks-is-frontend #brx-content > section {
opacity: 0;
transition: 300ms opacity ease;
}
body.bricks-is-frontend #brx-content > section.fp-section {
opacity: 1;
}
代码三:初始化 JS
window.addEventListener('load', () => {
if (!document.body.classList.contains('bricks-is-frontend') ){
return;
}
// Fullpage
new fullpage('#brx-content', {
// options here
autoScrolling:true,
sectionSelector: '#brx-content > section',
slideSelector...
小结
- FullPage.js 整页滚动适合单页演示型页面,不适合常规内容站
- 记得只在
bricks-is-frontend下初始化,避免影响构建器 - 配合 Bricks 的 section 结构,几乎不用改 HTML
延伸阅读
延伸阅读
Bricks Tabs 自动轮播:滚动到可视区自动切换标签页
教程:给 Bricks 的 Tabs(Nestable)元素加自动轮播——滚动到可视区域后每 x 秒自动切换标签页,适合首页产品/方案展示。
tutorialBricks 判断 ACF Repeater 是否有数据行:条件输出进阶
教程:在 Bricks 里用自定义函数判断 ACF Repeater 字段是否有数据行,从而条件显示元素。解决基础类型条件判断搞不定的数组型字段。
tutorialBricks 给区块加草稿状态开关:编辑器里隐藏未定稿区块
教程:用代码片段给 Bricks 所有元素加一个“草稿状态”勾选框,勾选后前端不输出。适合临时隐藏未定稿区块(Bricks 2.0 已原生内置,本文作历史方案参考)。
tutorialBricks 精美动画组件 Fancy Animations——滚动入场与悬停动画点选即用
教程:想给 Bricks 元素加滚动入场和鼠标悬停动画?Fancy Animations 这款 Bricks 插件把效果做成预设类,复制类名即可套用,不用手写 CSS。
