我正在为 WP 开发自定义主题,需要进行类似于本网站https://www.instrument.com/的页面转换
对于这些目的, Barba.js似乎是一个完美的解决方案。但是,整个 DOM 树总是会刷新,而不仅仅是内容。
这是我所拥有的:
header.php
<html>
<head>
<meta name="viewport" content="width=device-width">
<?php wp_head();?>
</head>
<body data-barba="wrapper"
<?php
if ( get_field('is_dark_theme') ) {
body_class( 'bg-dark text-light' );
} else {
body_class();
}
?>
>
<nav>
...
</nav>
<main data-barba="container" data-barba-namespace="home">
footer.php
</main>
</div>
<?php wp_footer();?>
</body>
</html>
在正文标记关闭之前注入的主脚本文件中,我有以下内容:
(function () {
barba.init({
transitions: [{
name: 'default-transition',
leave() {
console.log('leave');
},
enter() {
console.log('enter');
}
}]
});
})();
当我单击导航栏中的链接时,会出现leave
控制台输出,但随后会再次加载整个页面,就好像 Barba 从未出现过一样。我从来没有看到enter
输出。
是否可以首先将 Barba 与 WP 一起使用?如果是这样,我做错了什么?
我感谢您的帮助。