问题标签 [scrolltrigger]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
gsap - 到达视口底部时,ScrollTrigger 切换功能
苏,
我正在使用带有 ScrollTrigger 的gsap在我的网站上切换暗/亮模式。
我编写了一个函数来检测触发器何时可见:
例如.js__trigger-dark当用户滚动超过第一部分 300px 时切换暗模式,并在用户再次向上滚动到具有类.js__trigger-dark的部分时删除该属性。这工作正常,直到用户到达屏幕底部并删除该属性。
有人可以解释为什么滚动到屏幕底部时它会被删除吗?由于某种原因onEnterBack被调用,我不知道为什么。
问候, b
html - 防止绝对 div(随 ScrollTrigger 移动)拉长页面
我想使用 ScrollTrigger 制作一个简单的视差效果。问题是包含“图像”(当前为红色框)的绝对 div 具有比页面本身更大的高度。因此,由于图像已随 ScrollTrigger 移动,因此在页脚之后有很大的间隙。有没有办法防止这个巨大的差距?
这是一个JSFiddle。要查看实际问题,预览窗口的宽度需要至少为 1050 像素。
HTML
SCSS
JS
gsap - 当移动响应视图设置为触摸模拟和在实际移动设备上时,Bulma 和 scrollTrigger 更改/中断
因此,我使用了多个插件,并且遇到了一个普遍存在的问题,直到将所有内容都剥离回布尔玛。在 Firefox 中使用响应式设计模式时,一切看起来都如我所愿。当启用“触摸模拟”或托管网站并直接在我的手机上查看时,它会将其显示为与我所做的编辑略有不同的损坏版本。
当我使用 GSAP/scrollTrigger 并且它更加崩溃时,这进一步成为一个问题。启用 sccrollTrigger 补间的媒体查询后,我突然失去了我的汉堡菜单,并且多个部分的动画在正确的高度没有响应。有没有其他人在这两个平台上遇到过这个问题?愿意发布任何必要的代码笔示例。
css - 将 ion-content 绑定为 GSAP Timeline 的滚动条
我正在 Ionic 应用程序(v 6.18.1)中实现 GSAP。
我无法创建将 ion-content 组件标识为滚动条的 ScrollTrigger。
我发现了一个带有一些故障的解决方法,因为设置为“中心”的开始和结束参数通过滚动移动并在不滚动时返回中心,因此使用pin:true(我需要它)存在明显的故障。
这是我的组件的代码:
我想删除 div.content-scroll 并将 ion-content 作为滚动条绑定到 ScrollTrigger.create()或停止故障的东西!
我试过: scroller: document.querySelector('ion-content') ion-content class=".content-scroll"
但是我再也看不到标记了...
滚动时如何停止标记?
一些技巧?
提前感谢大家!
javascript - Material UI useScrollTrigger模块中如何开启和关闭滚动触发?
我正在尝试使用 React 中的 Material UI 创建一个调查页面。我希望我的调查在用户滚动问题时打开,并在用户滚动出问题时关闭。类似于此页面的行为。
https://www.surveymonkey.com/r/Typical-Customer-Demographics-Template
经过一番研究,我决定在 MUI 中使用 useScrollTrigger 模块。当我向下滚动到问题时,我能够打开这些问题,但是当我向下滚动时,我仍然无法找到一种方法来关闭它们。
这就是我创建 scrollToColor 函数的方式:
我创建了 2 个触发器,所以当它滚动到问题时,文本颜色变成黑色,当滚动出去时,它又变回灰色。这是我如何将其添加到父组件的示例代码。
但不幸的是,这不起作用。关于如何完成这项工作的任何提示?
此外,除了使用 MUI useScrollTrigger 模块之外,在 React 中是否有任何更简单、更清洁的方法可以存档?
谢谢!
javascript - 使用 GSAP 和 ScrollTrigger 创建数字计数器(存在数字)
我有一个section
展示统计数据的。
- 其中一些统计数据是数字(即 145);
- 有些是数字、字符和符号(即 65K+ 或 $20.00)
- 有些只是纯文本(即“文本”)
当本节位于 中时view
,我希望包含要计数的数字的统计信息(当然,不包含不计数的数字的统计信息)。
我想要达到的效果是:
- 所有
.statsBannerCard
的都设置为visibility: hidden
- 用户滚动到部分
- JS 检查 first 是否
.statsBannerCard
包含数字;如果是,计数(visibility: visible
现在这张单卡)。 - 然后,一旦第一张卡的计数器完成,使第二张卡可见并检查它是否包含数字,依此类推。
一旦前一个卡片计数器完成,就会显示进行中的卡片。如果一张卡片只包含文字(所以我们无法数数),它只会显示卡片并继续前进。
目前的问题:
在下面的演示中,我使用该data-number
属性来确定卡片需要计数的数字。向下滚动时,第一个计数器有效(因为它是纯integer
),但是,当涉及字符、符号或字母时,它会停止工作。
演示:
javascript - 使用 GSAP 创建水平滚动部分
我正在尝试实现一个section
在视图中变为水平滚动条的内容,直到滚动条中的项目(在我的情况下为图像)完成,此时它再次成为垂直滚动条。
我已经在以下演示中看到并调整了我的方法:
我想要实现的美感是默认显示两个图像,然后滚动查看休息。请参阅下面的样机:
这是我目前的方法:
在我上面的演示中,您可以看到在该部分中滚动时,图像向下移动(不是预期的),然后它们开始向左移动(而水平滚动应该向右移动)。
另外,为了最初显示这两张牌,我尝试将 a 设置width
为.horizontalScroller__item
,但它只会把它弄得更糟。
不确定为什么我的代码会按原样执行,有什么想法吗?
javascript - GSAP:当它击中元素时固定进度条+进度条不准确
我正在尝试创建一个进度条,显示用户仍有多少特定元素可以查看。以下是一些细节:
.postProgressBar
默认出现在.postHeroImage
- 当用户滚动时,我希望根据剩余的元素滚动到
.postProgressBar
多少来慢慢填充。.spacer
- 当到达
.postProgressBar
我的底部时header
,我希望它成为fixed
底部header
(并.postHeroImage
在再次出现时取消修复)。
查看我目前的方法:
目前的问题:
.postProgressBar
不会变成(在检查模式下fixed
看不到fixed
内联样式)- 根据剩余滚动
.postProgressBar
量,显示的进度不准确。.spacer
reactjs - gsap 插件位于窗口对象的什么位置?
我正在向 GSAP 注册 ScrollTrigger 插件,如下所示。
当我这样做时,这个插件注册在哪里?我在哪里可以在window
对象下找到它?有一个键,_gsap
但我在那里找不到插件。
我想指出我将它与Next.js一起使用。