当前位置: 首页 > 知识库问答 >
问题:

在滚动上设置引导导航栏透明度

严宇
2023-03-14

我使用了一个名为custom的辅助填充。css覆盖引导代码,我想知道如何创建一个只有当我的网站的访问者不在页面顶部时才激活的代码。

到目前为止,我使用bootstrap提供的默认代码创建了一个透明的导航栏。我唯一要做的就是将其设置为在访问者向下滚动时执行background color:#color

例子:https://www.lyft.com/

当我在页面顶部时,导航栏是透明的,但当我向下滚动时,它会变得不透明。

共有3个答案

满昊然
2023-03-14

为了避免使用滚动、加载和调整大小事件对性能的影响,现在可以使用Intersection Observer API。

它将允许您检测页面上的内容是否被滚动,并相应地设置导航栏透明度(通过添加或删除类)。

请查看此答案以了解更多详细信息。

索嘉石
2023-03-14
$(document).ready(function() {
    $(window).scroll(function() {
       if($(this).scrollTop() > height) { 
           $('.navbar').addClass('scrolled');
       } else {
           $('.navbar').removeClass('scrolled');
       }
    });
});
松建本
2023-03-14

好的,您需要以下代码来实现这一效果:(我将使用jQuery,因为它是受引导支持的语言)。

jQuery:

/**
 * Listen to scroll to change header opacity class
 */
function checkScroll(){
    var startY = $('.navbar').height() * 2; //The point where the navbar changes in px

    if($(window).scrollTop() > startY){
        $('.navbar').addClass("scrolled");
    }else{
        $('.navbar').removeClass("scrolled");
    }
}

if($('.navbar').length > 0){
    $(window).on("scroll load resize", function(){
        checkScroll();
    });
}

您也可以使用ScrollSpy来完成此操作。

和您的CSS(示例):

/* Add the below transitions to allow a smooth color change similar to lyft */
.navbar {
    -webkit-transition: all 0.6s ease-out;
    -moz-transition: all 0.6s ease-out;
    -o-transition: all 0.6s ease-out;
    -ms-transition: all 0.6s ease-out;
    transition: all 0.6s ease-out;
}

.navbar.scrolled {
    background: rgb(68, 68, 68); /* IE */
    background: rgba(0, 0, 0, 0.78); /* NON-IE */
}
 类似资料:
  • 问题内容: 我使用一个名为custom.css的辅助填充来覆盖引导程序代码,我想知道如何创建仅在网站访问者不在页面顶部时才激活的代码。 到目前为止,我使用引导程序提供的默认代码创建了一个透明的导航栏。我唯一要做的就是将其设置为执行:`background-color: 当我在页面顶部时,导航栏是透明的,但是当我向下滚动时,它变得不透明。 问题答案: 好的,您需要以下代码来实现此效果:(我将使用jQ

  • 我正在创建一个应用程序,我在互联网上浏览,我想知道他们是如何使这个透明的UINavigationBar像这样: 我在appdelegate中添加了以下内容: 但这只会让它看起来像: 如何使导航栏像第一个图像一样透明?

  • 我一直在Stack上寻找一些关于这个的指导,但是没有一个问题被问到这么深,答案也没有更新到最新的Swift版本,甚至没有更新到最新的Swift版本。 这是我所拥有的: 带有两个栏项目的导航控制器: 我的目标是:使导航根视图控制器的导航栏透明(但按钮和标题仍然可见),而不是子导航——没有奇怪的细微差别,比如之前的彩色闪光,或切断导航栏(参见gif) 我尝试过的事情: 在<代码>视图将出现(u动画:B

  • 我想使内联导航栏透明,使其与视图背景相匹配,但仅在滚动之前。一旦你滚动,我想使用默认的导航背景颜色,就像大导航栏一样,但与内联。 以下是苹果提醒应用程序(iOS14)中的一个示例: 我试过使用这个init,但它也会在滚动时改变导航栏的背景。

  • 只有在第一次打开应用程序时,半透明的状态栏才会出现问题。请看屏幕截图: http://i1335.photobucket.com/albums/w673/ductruongcntt/Screenshot_2014-06-26-14-17-26_zps1e9a56f4.png 以下是我使用的样式的XML,其中包括半透明状态栏: 我的主题是:

  • 我在试着做一个Android发射器。我想实现一个完全透明的状态栏和导航栏,这里是我的主题xml文件。 最后两项不管用,Lollipop上还有影子。 我想实现的(新星发射器): 如何让状态栏和导航栏“透明”而不是“半透明”?