Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/389.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 使滚动图标停止在div元素,而不是使用滚动顶部_Javascript_Html_Css - Fatal编程技术网

Javascript 使滚动图标停止在div元素,而不是使用滚动顶部

Javascript 使滚动图标停止在div元素,而不是使用滚动顶部,javascript,html,css,Javascript,Html,Css,当用户向下滚动到我的社交媒体按钮时,我正在使用这个javascript函数将其固定到标题,这样他们就可以开始使用固定的标题滚动 $(window).scroll(function(e){ var $el = $('.social-icons'); console.log($(this).scrollTop()); if ($(this).scrollTop() > 925){ $el.removeClass("not-fix-search")

当用户向下滚动到我的社交媒体按钮时,我正在使用这个javascript函数将其固定到标题,这样他们就可以开始使用固定的标题滚动

$(window).scroll(function(e){ 
     var $el = $('.social-icons'); 
     console.log($(this).scrollTop());

     if ($(this).scrollTop() > 925){ 
     $el.removeClass("not-fix-search");
     $el.addClass("fix-search");

     }
     if ($(this).scrollTop() < 925){
     $el.removeClass("fix-search");
     $el.addClass("not-fix-search");
     } 
     });
$(窗口)。滚动(函数(e){
var$el=$('.social icons');
log($(this.scrollTop());
如果($(this.scrollTop()>925){
$el.removeClass(“非修复搜索”);
$el.addClass(“固定搜索”);
}
if($(this).scrollTop()<925){
$el.removeClass(“修复搜索”);
$el.addClass(“非固定搜索”);
} 
});
它在我的27英寸显示器上工作得很好,但在我的小显示器上,它在修复之前会滚动通过标题,我想知道当它点击导航栏div而不是使用scrollTop时,我是否可以让他们切换类

html


使用
$el.scrollTop()
获取元素的偏移量,而不是窗口的偏移量。您可以执行以下操作:

// headerHeight = the actual height of your header element
if ($el.scrollTop() <= headerHeight) {
    // add class
}
//headerHeight=标题元素的实际高度

如果($el.scrollTop(),您可以使用主体或窗口的动态高度。请参见下面的示例

if ($(this).scrollTop() > ($(window).height()-100)) {
    $el.removeClass("not-fix-search");
    $el.addClass("fix-search"); 
}

if ($(this).scrollTop() < ($(window).height()-100)) {
    $el.removeClass("fix-search");
    $el.addClass("not-fix-search");
}


你能把html代码发给我吗?好的没有pbm…….添加了html没有解决问题哈哈
if ($(this).scrollTop() > ($(window).height()-100)) {
    $el.removeClass("not-fix-search");
    $el.addClass("fix-search"); 
}

if ($(this).scrollTop() < ($(window).height()-100)) {
    $el.removeClass("fix-search");
    $el.addClass("not-fix-search");
}