javascript - React and Parallax : 单击页面内导航链接时出现错位的视差图像
问题描述
我正在使用一个名为 Rellax 的 React 库在我的网站上实现视差效果。当我滚动到页面的那个部分时,它工作得很好。但是,当我单击导航栏并导航到特定的#section 时,这个非常视差的图像漂浮在与它应该放置的位置完全不同的距离上。
我感觉这与元素的位置计算方式有关,因为我的页面结构没有单一的主体,而是一组反应组件。
其他视差库也出现了同样的问题。
现在我指的是视差组件:(代码是缩写的,只显示我提到效果的部分)
export default function Advantages() {
useEffect(() => {
// init parallax
new Rellax('#parallaxImage', {
center: true,
});
});
return (
<section>
<img
id="parallaxImage"
className="w-100"
data-rellax-speed="2"
src={ traktor }
alt="tractor parallax" />
</section>
)}
解决方案
你不应该只调用一次(通过添加方括号)吗?
useEffect(() => {
// init parallax
new Rellax('#parallaxImage', {
center: true,
});
}, []); // <-- Empty array
推荐阅读
- r - 用 R 中观察值内的列表来解释数据框
- java - 即时在从基类继承的继承类中获取驱动程序值 = null 并且还获取空点异常(硒)
- javascript - Google Maps InfoWindows 是否修复了滚动位置更改错误?
- php - 使用xpath根据属性值返回特定项目值而无需循环
- google-cloud-platform - 不断收到此错误(没有足够的可用资源来满足请求。请尝试其他区域,或稍后再试)
- c# - 将 SerializeField 添加到变量时的奇怪行为
- python - 如何编写可以编写给定 n 个数字的表格的代码?
- python - 使用 PyTorch 从 MNIST 数据集中选择 0 和 1 时出现 AttributeError
- html - 防止长文本溢出
- java - URL.openconnection() 处的套接字绑定