https://www.w3cmm.com/javascript/touch.html   //触摸与手势事件连接
tinyscrollbar //方法1
var _this = $('#fabu');
var scrollFunc=function(e){
e=e||window.event;
if(e.wheelDelta){//IE/Opera/Chrome
if(e.wheelDelta==-120){
_this.hide();
}else{
_this.show();
}
}else if(e.detail){
//Firefox
if(e.detail==-3){
_this.hide();
}else{
_this.show();
}
}
};
if(document.addEventListener){//注册事件
document.addEventListener("onmousewheel" ,scrollFunc, false);
}
//IE/Opera/Chrome
window.onmousewheel=document.onmousewheel=scrollFunc; //方法----------稍微有点动画
 //发布按钮上滑消失,下滑出现
var startY, endY;
document.addEventListener('touchstart', function (e) {
startY = e.touches[0].pageY;
console.log(startY)
}, false);
document.addEventListener('touchmove', function (e) {
endY = e.changedTouches[0].pageY;
moveLoad();
}, false);
function moveLoad() {
var movY = endY - startY;
var fabu = document.getElementById('fabu');
if (movY > 0) {
jQuery("#fabu").animate({bottom:"10px"},0.1).fadeIn(50); }
else {
jQuery("#fabu").animate({bottom:"-60px"},0.5).fadeOut(50);
}
}

//方法2
function getData(event) {
var e = event || window.event;
//获取滚动距离(FF每次滚动 data为3或者-3,其他为120或者-120 等于3是向上滚动,等于-3是向下滚动)
var data = e.detail || e.wheelDelta;
if(data==3){
_this.hide();
}else if(data==-3){
_this.show();
}
}
//IE之外的绑定事件方法
if (document.addEventListener && !document.attachEvent) {
document.addEventListener('mousewheel', getData);
//FF绑定滚动事件
document.addEventListener('DOMMouseScroll', getData);
}
//IE
else if (document.attachEvent && !document.addEventListener) {
document.attachEvent('onmousewheel', getData);
} else {
window.onmousewheel = getData;
}
//http://www.tuicool.com/articles/vANraay //方法3 手机端滑动监听事件
//发布按钮上滑消失,下滑出现
//var _this = $('#fabu');
var startY,endY;
document.addEventListener('touchstart',function(e){
startY= e.touches[0].pageY;
},false);
document.addEventListener('touchend',function(e){
endY= e.changedTouches[0].pageY;
moveLoad();
},false);
function moveLoad(){
var movY=endY-startY;
if(movY<-80){
//_this.hide();
alert(123)
}else{
//_this.show();
}
}

js监听事件 上滑消失下滑出现的效果 触摸与手势事件的更多相关文章

  1. js判断手指的上滑,下滑,左滑,右滑,事件监听

    原理:1:当开始一个touchstart事件的时候,获取此刻手指的横坐标startX和staerY: 2:当触发touchmove事件的时候,再获取此时手指的横坐标moveEndX和纵坐标moveEn ...

  2. NestedScrollView嵌套RecycleView 滑动 实现上滑隐藏 下滑显示头部效果

    废了好大的劲才弄好的,记下来 方便以后查看 public class MainActivity extends AppCompatActivity { private RecyclerView mRe ...

  3. js监听input等表单输入框的变化事件oninput

    js监听input等表单输入框的变化事件oninput,手机页面开发中使用到文本框textarea输入字符监听文本框变化计算还可以输入多少字符,如果使用onkeyup的话是无法监听到输入法输入的文本变 ...

  4. JS监听div的resize事件

    原文地址:http://zhangyiheng.com/blog/articles/div_resize.html 需求 开发过程中经常遇到的一个问题就是如何监听一个div的size变化. 比如我用c ...

  5. js监听transition过渡事件

    html <div id="mydiv"> </div> style #mydiv{ width:100px; height:100px; backgrou ...

  6. js 监听整个页面的回车事件

    JS监听整个页面的回车事件 <script type="text/javascript"> document.onkeydown=keyDownSearch;      ...

  7. 原 JS监听回车事件

    原 JS监听回车事件 发表于2年前(2014-06-04 10:16)   阅读(6101) | 评论(0) 11人收藏此文章, 我要收藏 赞0 1月16日厦门 OSC 源创会火热报名中,奖品多多哦  ...

  8. js监听用户的键盘敲击事件,兼容各大主流浏览器

    js监听用户的键盘敲击事件,兼容各大主流浏览器 <script type="text/javascript"> document.onkeydown = functio ...

  9. 原生js监听input值改变事件

    哈哈哈,又来了,今天闲来无事,实验了下原生js监听input value值改变事件,下面就来说道说道: 本来写监听input值便获是用jquery的,之前的随笔写了,就是这个方法,地址:http:// ...

随机推荐

  1. 【腾讯Bugly干货分享】聊聊苹果的Bug - iOS 10 nano_free Crash

    本文来自于腾讯Bugly公众号(weixinBugly),未经作者同意,请勿转载,原文地址:https://mp.weixin.qq.com/s/hnwj24xqrtOhcjEt_TaQ9w 作者:张 ...

  2. showPrompt弹框提示

    工作中会有很多的弹框,用来添加模板,用来信息提示,,我现在用的模板有dialog(用来添加数据模板内容),还有一个就是自写的showPrompt用来判断错误或者正确的信息~~ 样子大概就是这样的,, ...

  3. Linux之文件系统的简单操作

    df:列出文件系统整体硬盘使用量 将容量以易读方式显示: [root@zkero ~]# df -h Filesystem Size Used Avail Use% Mounted on /dev/s ...

  4. HTML入门学习

    html 基本结构    <!DOCTYPE html> ----------------声明文档的解析类型, 避免浏览器的怪异模式<html> --------------- ...

  5. 编译时出现clock skew detected, your build may be incompeleted

    错误原因为文件修改时间大于系统时间,这时候如果date输出系统时间,会发现这个时间是错误的.在nachos实习时多次出现这个错误,简单的方法尝试make多次直到有一次出现'nachos' is up ...

  6. json恶补

    JS操作JSON总结 JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,采用完全独立于语言的文本格式,是理想的数据交换格式.同时,JSON是 JavaScr ...

  7. jquery easyui的datagrid在初始化的时候会请求两次URL?

    我们项目前端用的是jquery easyui,刚开始使用datagrid加载列表初始化时总是请求两次URL,这让人非常不解,怎么总是请求两次呢?数据一多,加载速度明显变慢,通过查资料才知道原来是重复声 ...

  8. QTP自动化测试流程

    1)准备TestCase        - 在进行自动化之前,将测试内容进行文档化,不建议直接录制脚本        - 在录制脚本之前设计好脚本,便于录制过程的流畅        - 由于测试用例设 ...

  9. python3中的socket

    socket是什么?用它做什么? socket,我们通俗的称之为套接字, 是进程间通信的一种方式,但是他与其他进程通信的一个主要区别是 他能实现不同主机间的通信,比如我们现在用的浏览器,在比如我们使用 ...

  10. Linux使用pam_tally2.so模块限制登录失败锁定时间

    关于PAM Linux-PAM (Pluggable Authentication Modules for Linux)可插拔认证模块. https://www.cnblogs.com/klb561/ ...