在很多网站中都有鼠标网上滚动头部就会滑出,继续往下滚动就会隐藏,下面看看实现方法

scroll();
function scroll(){// 入口方法  这个方法是获取事件的兼容,获取delta  --表示滚动条走向
var ele = document.documentElement || document.body;
var eventType = 'mousewheel';
// 火狐是DOMMouseScroll事件
if (document.mozHidden !== undefined) {
eventType = 'DOMMouseScroll';
}
function getData(event){
var e = event || window.event;
//为了兼容火狐
//为了兼容火狐
var delta = e.wheelDelta?e.wheelDelta:e.detail;//wheelDelta 非火狐-120:向下 120:向上 /detail火狐 3:向下 -3 :向上
bScrolls(delta);
}
myAddEvent(ele,eventType,getData);
}
function myAddEvent(ele,sEvent,getData){ //这个方法是兼容绑定事件/监听事件
if(ele.addEventListener && !ele.attachEvent){//非IE
ele.addEventListener(sEvent,getData);
}else{//IE
if(document.attachEvent && !document.addEventListener){ //IE8以下
ele.attachEvent('on'+sEvent,getData);
}else{ //IE8以上下
ele.addEventListener(sEvent,getData);
}
}
}
function bScrolls(delta){//执行操作
var p = document.documentElement.scrollTop || document.body.scrollTop;//当前滚动条的高度
if(p > ){//如果滚动条的高度大于你设置的高度,就开始判断滚动条的走向
$('.header').addClass('scroll');
if(delta < - || delta == ){//向下滚动
$('.header').removeClass('top');
}
else if(delta > || delta == -){//上滚
$('.header').addClass('top');
}
}else{
$('.header').removeClass('scroll');
}
}

这样用鼠标滚轮可以操控头部显示与隐藏,但是拖动滚动条确是没反应

在谷歌火狐中也可以监听onscroll 他可以实现用鼠标拉滚动条也会有这样的效果,在IE中不行必须要使用滚轮事件,

而且用onscroll事件监听,获取不到wheelDelta值,所以判断滚动条走向就要自己定义变量,去判断滚动条走向,代码如下

function scrolls(){
var p=,t=;
var windHeight = $(window).height();
$(window).scroll(function(){
p = $(this).scrollTop();
     if(t<=p){//下滚
//显示操作
}
else{//上滚
//隐藏操作
}
t = p;
});
}

此方法仅供参考

JS实现让滚轮控制网页头部显示与隐藏的更多相关文章

  1. 原生JS的移入溢出控制div的显示与隐藏

    原生JS的移入溢出控制div的显示与隐藏的写法 上面的写法火狐存在兼容性

  2. css3-10 如何控制元素的显示和隐藏(display和visibility的区别是什么)

    css3-10 如何控制元素的显示和隐藏(display和visibility的区别是什么) 一.总结 一句话总结:使用的时候直接在元素的样式中设置display和visibility属性即可.推荐使 ...

  3. 微信小程序点击控制元素的显示与隐藏

    微信小程序点击控制元素的显示与隐藏 首先我们先来看一下单个点击效果 我们来看一下wxml中的代码: <view class="conten"> <view cla ...

  4. 简简单单,jquery中,使用checkbox控制div的显示与隐藏

    今天开发代码时,发现好久不用jquery就生疏了. 所以作这个记录, 使用checkbox控制div的显示与隐藏. 一,html代码处: <input type="checkbox&q ...

  5. legend3---19、要更多的从服务器端控制元素的显示和隐藏,而不要是页面端

    legend3---19.要更多的从服务器端控制元素的显示和隐藏,而不要是页面端 一.总结 一句话总结: 这样可以控制很多页面端的非法操作 1.html标签中data方式的数据,修改之后在标签上只显示 ...

  6. jquery控制css的display(控制元素的显示与隐藏)

    使用jquery控制div的显示与隐藏: $("#div的id").show()表示display:block, $("#div的id").hide()表示di ...

  7. jquery控制元素的显示与隐藏

    比如要控制div的显示与隐藏,一句话就搞定了.$("#id").show()表示display:block,$("#id").hide()表示display:n ...

  8. swift 如何控制view的显示与隐藏

    swift 如何控制view的显示与隐藏 UIView有一个属性 hidden let line: UILabel = UILabel() 默认是显示的 需要显示它的时候:line.hidden = ...

  9. JS控制元素的显示和隐藏

    利用来JS控制页面控件显示和隐藏有两种方法,两种方法分别利用HTML的style中的两个属性,两种方法的不同之处在于控件隐藏后是否还在页面上占空位. 方法一: document.getElementB ...

随机推荐

  1. LeetCode Pascal's Triangle && Pascal's Triangle II Python

    Pascal's Triangle Given numRows, generate the first numRows of Pascal's triangle. For example, given ...

  2. js操作链接url

    使用js对当前的URL进行操作,可以使用内置对象window.location: window.location有以下属性: window.location.href:取得当前地址栏中的完整URL,可 ...

  3. sql 分组后显示每组的前几条记录

    sql 分组后显示每组的前几条记录 如   表中记录是             code       serialno             A1               1           ...

  4. GridControl 之 BandedGridView

    https://documentation.devexpress.com/#WindowsForms/clsDevExpressXtraGridViewsBandedGridBandedGridVie ...

  5. nyoj 吃土豆

    吃土豆 时间限制:1000 ms  |  内存限制:65535 KB 难度:4   描述 Bean-eating is an interesting game, everyone owns an M* ...

  6. [DL] 基于theano.tensor.dot的逻辑回归代码中的SGD部分的疑问探幽

    在Hinton的教程中, 使用Python的theano库搭建的CNN是其中重要一环, 而其中的所谓的SGD - stochastic gradient descend算法又是如何实现的呢? 看下面源 ...

  7. C# ObjectArx AutoCAD二次开发(转帖)

    http://www.cnblogs.com/houlinbo/p/3325898.html 1.开发基本资料准备 用Vs2010进行Autocad 2010开发,首先下载ObjectArx 2010 ...

  8. Logback 整合 RabbitMQ 实现统一日志输出

    原文地址:Logback 整合 RabbitMQ 实现统一日志输出 博客地址:http://www.extlight.com 一.前言 公司项目做了集群实现请求分流,由于线上或多或少会出现请求失败或系 ...

  9. Angular 4 表单校验2

    1. 将表单的方法移动到单独的ts文件夹中 2. code export function mobileValidator(control: FormControl): any { const myr ...

  10. ASP.NET实现Cookie功能的三个基本操作(写入,读取,删除)

      说正事 简而言之,在Cookie的时候有三个过程,分别是“写入,读取,删除”.任何伟大之作都是有基本的东西构成的,而Cookie的运用也不例外. 写入: 1 //创建一个HttpCookie对象 ...