jquery - 使用 jquery 根据页面高度显示 ul

标签 jquery html css scrolltop display

好的,所以我一直在搜索 stackoverflow 和谷歌。我已经找到了这个问题的答案,但由于某些奇怪的原因,我无法找到一个为我工作的答案。我还尝试在 jquery 中编写自己的代码来让它工作。我已经检查了我的代码,将我的风格添加到我的 <ul> 中。它基于关闭点击功能工作,但不会基于关闭页面高度工作。基本上我想要一个选择栏在向下滚动页面后出现并在我返回时消失。

HTML

<ul class="bttn2" id="hide" style="">   
    <li style="opacity:.5;" id="hide1" class="bttn2" href="#aboutme">ABOUT ME</li>
    <li style="opacity:.5;" id="hide2" class="bttn2" href="#experience">EXPERIENCE</li>
    <li style="opacity:.5;" id="hide3" class="bttn2" href="#hobbies">HOBBIES</li>
    <li style="opacity:.5;" id="hide4" class="bttn2" href="#school">SCHOOL</li>
</ul>

JQUERY

var element = $(".banner").offset().top;
$(window).scroll(function(){
    var y = $(window).scrollTop();
if (y >= element){
    $('.bttn2').css('display', 'none');
    }
});

基本功能:

https://jsfiddle.net/rnpp76rv

显示 display none 功能有效:

https://jsfiddle.net/rnpp76rv/2/

最佳答案

简单,

第 1 步。获取页面顶部的位置:

var topLocation = $('html').offset().top;

第 2 步. 获取滚动条的当前位置:

var currLocation=$(window).scrollTop();

步骤 3. 比较位置和显示/隐藏

if (topLocation != currLocation){
        $('#id1').show();
    }
else{
        $('#id1').hide();
    }

Check fiddle here

关于jquery - 使用 jquery 根据页面高度显示 ul,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35646377/

相关文章:

javascript - 如何抛出未定义,正确使用 $.extend()

jquery - 第二次点击时页面重定向不起作用

php - 获取表单中选项的 php 文本(不是值)

html - 溢出 :scroll not working in google chrome

html - 相对于 div 的动态搜索栏

html - 如何设置 Owl Carousel 导航按钮的样式(上一个或下一个)

html - 在表格数据中添加 "sidebar"?

javascript - Javascript 类中全局变量的范围

javascript - 列表框不将字符串传递给谷歌脚本

javascript - 如何在 Eclipse IDE 中验证 HTML、CSS 和 JS