Javascript 两个容器之间的自定义造型线,可以像进度条一样更改颜色
根据上图,我试图实现以下目标:Javascript 两个容器之间的自定义造型线,可以像进度条一样更改颜色,javascript,jquery,html,css,Javascript,Jquery,Html,Css,根据上图,我试图实现以下目标: 容器到达视口中间后,其文本背景将变为黄色 同时,当用户向下或向上滚动时,中间箭头将慢慢填充黄色,直到用户到达下一个容器的中间视口 现在,我设法使焦点容器将其文本背景更改为黄色,并且我已经显示了进度条形状,但我不知道如何在用户滚动动作(如进度条)中相对将其更改为黄色。另外,第一个进度条需要从右开始,而第二个进度条将从左开始,下一个进度条则相反。 p/S:我正在考虑只使用图像,但要确保它像进度条一样变为黄色是不可能的 $(文档).ready(函数(){ var wi
$(文档).ready(函数(){
var winHeight=$(窗口).height(),
topLimit=winHeight*.2;
$(窗口).on('scroll',function(){
$('.parent')。每个(函数(){
var thisttop=$(this.offset().top-$(window.scrollTop();
如果(thisTop有很多方法可以做到这一点。图像的透明部分。智能CSS使用边框颜色或简单的边距。我不确定什么是最好的,因为我们没有使用实际的代码,但在这一点上更多的是模拟
考虑以下几点
$(函数(){
var winHeight=$(窗口).height(),
topLimit=winHeight*.2;
$(窗口).on('scroll',function(){
$('.parent')。每个(函数(){
var thisttop=$(this.offset().top-$(window.scrollTop();
如果(thisTop有很多方法可以做到这一点。图像的透明部分。智能CSS使用边框颜色或简单的边距。我不确定什么是最好的,因为我们没有使用实际的代码,但在这一点上更多的是模拟
考虑以下几点
$(函数(){
var winHeight=$(窗口).height(),
topLimit=winHeight*.2;
$(窗口).on('scroll',function(){
$('.parent')。每个(函数(){
var thisttop=$(this.offset().top-$(window.scrollTop();
如果(这个顶部
$(文档).ready(函数(){
var winHeight=$(窗口).height(),
topLimit=winHeight*.2;
$(窗口).on('scroll',function(){
$('.parent')。每个(函数(){
var thisttop=$(this.offset().top-$(window.scrollTop();
如果(这个顶部
$(文档).ready(函数(){
var winHeight=$(窗口).height(),
topLimit=winHeight*.2;
$(窗口).on('scroll',function(){
$('.parent')。每个(函数(){
var thisttop=$(this.offset().top-$(window.scrollTop();
如果(此顶部文本背景更改)
当文本到达视口中心时更改文本背景相对简单,可以通过一些经过深思熟虑构建的CSS类和少量JavaScript来完成
主列表中的每个项目都有几个组件,包括几个需要更改背景颜色的文本框。我们为每个文本框添加一个类,称之为。color animate
。在CSS中,我们添加一个transition
属性,以使动画平滑淡出
.colour-animate {
transition: background-color 0.3s;
}
现在是JavaScript
如果主列表中的每个项目都有类名。项目
我们可以遍历项目
的列表,并检查每个项目是否位于视口中心上方。这是一个简单的计算:
if ( items[ i ].getBoundingClientRect().top < ( window.innerHeight / 2 ) ) {
// do stuff
}
*{margin:0;padding:0;框大小:border-box;}
身体{
背景色:#111;
填充:50px;
}
.项目{
背景图片:网址(https://upload.wikimedia.org/wikipedia/en/f/f7/Leger_railway_crossing.jpg );
背景尺寸:封面;
位置:相对位置;
显示器:flex;
调整内容:灵活启动;
利润率:40px自动;
}
.项目.对{
证明内容:柔性端;
}
.项目.说明{
宽度:33%;
填充:30px;
颜色:#fff;
背景色:rgba(0,0,0,0.7);
}
.项目.标题{
字体大小:150%;
位置:绝对位置;
排名:0;
左:自动;
右:0;
填充:10px 50px;
颜色:#fff;
背景色:#000;
}
.item.header.left{
左:0;
右:自动;
}
.彩色动画{
过渡:背景色0.3s;
}
标题1
同一天,你可以坐在那里,成为一名优秀的足球运动员。你可以坐在那里,自由地坐在那里,自由地走
标题2
同一天,你可以坐在那里,成为一名优秀的足球运动员。你可以坐在那里,自由地坐在那里,自由地走
标题3
同一天,你可以坐在那里,成为一名优秀的足球运动员。你可以坐在那里,自由地坐在那里,自由地走
标题4
同一天,你可以坐在那里,成为一名优秀的足球运动员。你可以坐在那里,自由地坐在那里,自由地走
标题5
同一天,你可以坐在那里,成为一名优秀的足球运动员。你可以坐在那里,自由地坐在那里,自由地走
文本背景更改
当文本到达视口中心时更改文本背景相对简单,可以通过一些经过深思熟虑构建的CSS类和少量JavaScript来完成
主列表中的每个项目都有几个组件,包括几个需要更改背景颜色的文本框。我们为每个文本框添加一个类,称之为。color animate
。在CSS中,我们添加一个transition
属性,以使动画平滑淡出
.colour-animate {
transition: background-color 0.3s;
}
现在是JavaScript
如果主列表中的每个项都有类名。item
我们可以遍历项的列表和ch