Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/email/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 修复了使用CSS和sticky.js在滚动和更改状态时的div_Javascript_Css_Fixed - Fatal编程技术网

Javascript 修复了使用CSS和sticky.js在滚动和更改状态时的div

Javascript 修复了使用CSS和sticky.js在滚动和更改状态时的div,javascript,css,fixed,Javascript,Css,Fixed,当我滚动时,我当前正在使用修复屏幕顶部的div。这是完美的,我不想改变它,但我想对div应用一些css,在它坚持的时候进行一些改变 我已经尝试在粘性脚本中实现一些JavaScript,但仍然不起作用 这就是我现在拥有的: HTML 我确信这只是一个简单的javascript格式问题,但我似乎找不到正确的语法。您可以使用它。或此代码: var prevScrollpos=window.pageYOffset; window.onscroll=函数(){ var currentScrollPos

当我滚动时,我当前正在使用修复屏幕顶部的div。这是完美的,我不想改变它,但我想对div应用一些css,在它坚持的时候进行一些改变

我已经尝试在粘性脚本中实现一些JavaScript,但仍然不起作用

这就是我现在拥有的:

HTML

我确信这只是一个简单的javascript格式问题,但我似乎找不到正确的语法。

您可以使用它。或此代码:


var prevScrollpos=window.pageYOffset;
window.onscroll=函数(){
var currentScrollPos=window.pageYOffset;
如果(prevScrollpos>currentScrollPos){
$('.header').css({top:'0px'});
}否则{
$('.header').css({top:'-50px'});
}
prevScrollpos=当前ScrollPos;
}
您可以使用这个。或此代码:


var prevScrollpos=window.pageYOffset;
window.onscroll=函数(){
var currentScrollPos=window.pageYOffset;
如果(prevScrollpos>currentScrollPos){
$('.header').css({top:'0px'});
}否则{
$('.header').css({top:'-50px'});
}
prevScrollpos=当前ScrollPos;
}
试试这个

var header = document.getElementById("myHeader");
var sticky = header.offsetTop;

$(window).scroll(function() {
  if (window.pageYOffset > sticky) {
    header.classList.add("sticky");
  } else {
    header.classList.remove("sticky");
  }
})

.sticky {
  position: fixed;
  top: 0;
  width: 100%
}
将css应用到粘性类以获得效果

试试这个

var header = document.getElementById("myHeader");
var sticky = header.offsetTop;

$(window).scroll(function() {
  if (window.pageYOffset > sticky) {
    header.classList.add("sticky");
  } else {
    header.classList.remove("sticky");
  }
})

.sticky {
  position: fixed;
  top: 0;
  width: 100%
}
将css应用到sticky类以获得效果

您看到摘要了吗

根据有关事件的部分,您需要执行以下操作:

$('.header').on('sticky-start', function() { // your code });
你看到简报了吗

根据有关事件的部分,您需要执行以下操作:

$('.header').on('sticky-start', function() { // your code });

关于@Alex的观点,文档没有描述您在代码中使用的任何成功选项

正确的方法应该是使用已经发生的事件

下面我举了一个例子

$(文档).ready(函数(){
$(“.header”).sticky({topSpacing:0});
$('.header')。在('sticky-start',function()上{
$(“.small_logo img”).fadeIn(“slow”);
});
$('.header')。在('sticky-end',function()上{
$(“.small_logo img”).淡出(“慢”);
});
});
.header{
背景:#EEE;
高度:100px;
}
.small_标志img{
高度:100px;
显示:无;
}
.身体{
高度:1000px;
}

关于@Alex的观点,文档没有描述您在代码中使用的任何成功选项

正确的方法应该是使用已经发生的事件

下面我举了一个例子

$(文档).ready(函数(){
$(“.header”).sticky({topSpacing:0});
$('.header')。在('sticky-start',function()上{
$(“.small_logo img”).fadeIn(“slow”);
});
$('.header')。在('sticky-end',function()上{
$(“.small_logo img”).淡出(“慢”);
});
});
.header{
背景:#EEE;
高度:100px;
}
.small_标志img{
高度:100px;
显示:无;
}
.身体{
高度:1000px;
}


请在您的答案中包含相关信息。Hey@Mr.Js thanxx用于快速响应,但我对sticky.Js很满意,我只想添加到它中以创建我声明的效果。请在您的答案中包含相关信息。Hey@Mr.Js thanxx用于快速响应,但是我对sticky.js很好,我只想添加到它来创建我声明的效果Hey@Poulima,谢谢你,但是我必须停止使用sticky.js来做这件事。实际上,这是在滚动条上粘贴div最简单的方法。不用sticky.js你就可以做到,它对meHey@Poulima很有效,谢谢你,但我必须停止使用sticky.js来做到这一点。实际上,这是在滚动条上粘贴div最简单的方法。不用sticky.js你就可以做到,这对我很有用