Js判断H5上下滑动方向及滑动到顶部和底部判断的示例代码


Posted in Javascript onNovember 15, 2017

向上滑动隐藏底部悬浮框,向下滑动显示悬浮框。使用pc端浏览器查看请把浏览器设置为手机浏览器模式。

<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
<title>手机端触屏手指滑动方向</title>
<meta content="width=device-width,initial-scale=1.0,minimum-scale=1.0,user-scalable=no,maximum-scale=1.0" id="viewport" name="viewport">
<script type="text/javascript">
var currntY = 0;
var lastY = 0;
var touch_screen = {
 //方向
  direction: {
	direction: "",
	object: null,

	start: function() {
      var self = this,
        obj = self.object;
      obj.addEventListener('touchstart', function(e) {
        self.move();
      }, false);
      obj.addEventListener('touchend', function(e) {
		//self.move();	
		lastY = document.body.scrollTop;	
      }, false);
    },
    //拖动滑动时
    move: function() {
      var self = this;	  
	  self.object.addEventListener('touchmove', function(e) {
		currntY = document.body.scrollTop;
        var direct = currntY - lastY;
		
        if (direct > 0) {
          self.direction = "down";
		  document.getElementById("nav").style.visibility="hidden";//隐藏
		} else if (direct < 0) {
		  self.direction = "up";
		  document.getElementById("nav").style.visibility="visible";//显示
		} 

		if(currntY == 0){
		  self.direction = "top";
		} else if((currntY + window.screen.availHeight) == document.body.clientHeight){
		  self.direction = "bottom";
		  document.getElementById("nav").style.visibility="visible";//显示
		}
        
        document.getElementById('nav').innerHTML= self.direction;
        //document.getElementById('nav').innerHTML= currntY + "|" + window.screen.availHeight + "|" + document.body.clientHeight;
		lastY = document.body.scrollTop;
      }, false);      
    },
    
    //通过一个dom对象进行初始化
    init: function(a) {
      var class_clone = function(source) { 
        var result={};
        for (var key in source) {
          result[key] = typeof source[key]==="object" ? class_clone(source[key]) : source[key];
        } 
        return result; 
      }
      var self = class_clone(touch_screen.direction);
      self.object = document.getElementById(a);
      if (!self.object) {
        alert('bind_object is not an object');
        return false;
      }
      self.start();
    }
  }
}

//页面加载完成
window.onload = function() {
  touch_screen.direction.init("inner");
}
</script>

<style> 
  * {margin: 0; padding: 0;}  
  #outer{ width:90%; height: 100%; background: #000; margin: auto; overflow: hidden;}  
  #inner{width:80%; background: #e4e4e4; margin: auto; position:relative; top:0px; font-size: 1em; padding: 30px 10px; }  
  #inner p{line-height: 30px; letter-spacing: 3px; text-indent:2em;} 
  #nav { width:100%; height: 50px; border: 1px solid #D4CD49; background: #947674;text-align: center; position:fixed;left:0;bottom:0; } 
  #nav2 { width:100%; height: 50px; border: 1px solid #D4CD49;background: #947674;} 
  h2{ width: 100%; text-align: center; }  
  h3{ width: 100%; padding-left:60%;}  
</style> 
</head>

<body>
<div id="spText2"></div> 
  <div id="outer"> 
    <div id="inner"> 
      <h2>背影</h2> 
      <h3>—朱自清</h3> 
            <p>我与父亲不相见已二年余了,我最不能忘记的是他的背影。 
    那年冬天,祖母死了,父亲的差使也交卸了,正是祸不单行的日子。我从北京到徐州,打算跟着父亲奔丧回家。到徐州见着父亲,看见满院狼藉的东西,又想起祖母,不禁簌簌地流下眼泪。父亲说:“事已如此,不必难过,好在天无绝人之路!”  
    回家变卖典质,父亲还了亏空;又借钱办了丧事。这些日子,家中光景很是惨淡,一半为了丧事,一半为了父亲赋闲。丧事完毕,父亲要到南京谋事,我也要回北京念书,我们便同行。 
    到南京时,有朋友约去游逛,勾留了一日;第二日上午便须渡江到浦口,下午上车北去。父亲因为事忙,本已说定不送我,叫旅馆里一个熟识的茶房陪我同去。他再三嘱咐茶房,甚是仔细。但他终于不放心,怕茶房不妥帖;颇踌躇了一会。其实我那年已二十岁,北京已来往过两三次,是没有什么要紧的了。他踌躇了一会,终于决定还是自己送我去。我再三回劝他不必去;他只说:“不要紧,他们去不好!” 
    我们过了江,进了车站。我买票,他忙着照看行李。行李太多了,得向脚夫行些小费才可过去。他便又忙着和他们讲价钱。我那时真是聪明过分,总觉他说话不大漂亮,非自己插嘴不可,但他终于讲定了价钱;就送我上车。他给我拣定了靠车门的一张椅子;我将他给我做的紫毛大衣铺好座位。他嘱咐我路上小心,夜里要警醒些,不要受凉。又嘱托茶房好好照应我。我心里暗笑他的迂;他们只认得钱,托他们只是白托!而且我这样大年纪的人,难道还不能料理自己么?  
    我说道:“爸爸,你走吧。”他望车外看了看,说:“我买几个橘子去。你就在此地,不要走动。”我看那边月台的栅栏外有几个卖东西的等着顾客。走到那边月台,须穿过铁道,须跳下去又爬上去。父亲是一个胖子,走过去自然要费事些。我本来要去的,他不肯,只好让他去。我看见他戴着黑布小帽,穿着黑布大马褂,深青布棉袍,蹒跚地走到铁道边,慢慢探身下去,尚不大难。可是他穿过铁道,要爬上那边月台,就不容易了。他用两手攀着上面,两脚再向上缩;他肥胖的身子向左微倾,显出努力的样子。这时我看见他的背影,我的泪很快地流下来了。我赶紧拭干了泪。怕他看见,也怕别人看见。我再向外看时,他已抱了朱红的橘子往回走了。过铁道时,他先将橘子散放在地上,自己慢慢爬下,再抱起橘子走。到这边时,我赶紧去搀他。他和我走到车上,将橘子一股脑儿放在我的皮大衣上。于是扑扑衣上的泥土,心里很轻松似的。过一会儿说:“我走了,到那边来信!”我望着他走出去。他走了几步,回过头看见我,说:“进去吧,里边没人。”等他的背影混入来来往往的人里,再找不着了,我便进来坐下,我的眼泪又来了。 
    近几年来,父亲和我都是东奔西走,家中光景是一日不如一日。他少年出外谋生,独力支持,做了许多大事。哪知老境却如此颓唐!他触目伤怀,自然情不能自已。情郁于中,自然要发之于外;家庭琐屑便往往触他之怒。他待我渐渐不同往日。但最近两年不见,他终于忘却我的不好,只是惦记着我,惦记着我的儿子。 
    我北来后,他写了一信给我,信中说道:“我身体平安,惟膀子疼痛厉害,举箸提笔,诸多不便,大约大去之期不远矣。”我读到此处,在晶莹的泪光中,又看见那肥胖的、青布棉袍黑布马褂的背影。唉!我不知何时再能与他相见! </p> 
<div id="nav" style="color:#F00; font-size:35px"></div>
    </div> 
  </div> 
<div id="nav2" ></div>
</body>
</html>

以上这篇Js判断H5上下滑动方向及滑动到顶部和底部判断的示例代码就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
使用JavaScript构建JSON格式字符串实现步骤
Mar 22 Javascript
Jquery+CSS3实现一款简洁大气带滑动效果的弹出层
May 15 Javascript
教你如何使用firebug调试功能了解javascript闭包和this
Mar 04 Javascript
javascript原型继承工作原理和实例详解
Apr 07 Javascript
jQuery 局部div刷新和全局刷新方法总结
Oct 05 Javascript
JS实现焦点图轮播效果的方法详解
Dec 19 Javascript
基于js粘贴事件paste简单解析以及遇到的坑
Sep 07 Javascript
JavaScript插件Tab选项卡效果
Nov 14 Javascript
通过vue-cli3构建一个SSR应用程序的方法
Sep 13 Javascript
基于Vue实现可以拖拽的树形表格实例详解
Oct 18 Javascript
微信小程序tabbar底部导航
Nov 05 Javascript
JS实现点击生成UUID的方法完整实例【基于jQuery】
Jun 12 jQuery
实现div内部滚动条滚动到底部和顶部的代码
Nov 15 #Javascript
js 原生判断内容区域是否滚动到底部的实例代码
Nov 15 #Javascript
实现div滚动条默认最底部以及默认最右边的示例代码
Nov 15 #Javascript
判断div滑动到底部的scroll实例代码
Nov 15 #Javascript
Vue.js实现列表清单的操作方法
Nov 15 #Javascript
判断滚动条滑到底部触发事件(实例讲解)
Nov 15 #Javascript
手机注册发送验证码倒计时的简单实例
Nov 15 #Javascript
You might like
php对mongodb的扩展(初出茅庐)
2012/11/11 PHP
php提示Failed to write session data错误的解决方法
2014/12/17 PHP
PHP以json或xml格式返回请求数据的方法
2018/05/31 PHP
thinkPHP3.2.3实现阿里大于短信验证的方法
2018/06/06 PHP
游戏人文件夹程序 ver 4.03
2006/07/14 Javascript
永不消失的title提示代码
2007/02/15 Javascript
用JTrackBar实现的模拟苹果风格的滚动条
2007/08/06 Javascript
js限制textarea每行输入字符串长度的代码
2012/10/31 Javascript
简易js代码实现计算器操作
2013/04/15 Javascript
JQuery表格拖动调整列宽效果(自己动手写的)
2014/09/01 Javascript
原生javascript实现图片放大镜效果
2017/01/18 Javascript
js判断传入时间和当前时间大小实例(超简单)
2018/01/11 Javascript
小程序点赞收藏功能的实现代码示例
2018/09/07 Javascript
JavaScript动态添加数据到表单并提交的几种方式
2019/06/26 Javascript
监控微信小程序中的慢HTTP请求过程详解
2019/07/05 Javascript
layui动态渲染生成左侧3级菜单的方法(根据后台返回数据)
2019/09/23 Javascript
JavaScript代码异常监控实现过程详解
2020/02/17 Javascript
如何解决jQuery 和其他JS库的冲突
2020/06/22 jQuery
[01:15]PWL S2开团时刻第二期——他们杀 我就白给
2020/11/25 DOTA
python通过openpyxl生成Excel文件的方法
2015/05/12 Python
一篇文章入门Python生态系统(Python新手入门指导)
2015/12/11 Python
在Ubuntu系统下安装使用Python的GUI工具wxPython
2016/02/18 Python
python中abs&amp;map&amp;reduce简介
2018/02/20 Python
浅谈Tensorflow由于版本问题出现的几种错误及解决方法
2018/06/13 Python
在python中用print()输出多个格式化参数的方法
2019/07/16 Python
python实现倒计时小工具
2019/07/29 Python
python的Jenkins接口调用方式
2020/05/12 Python
python制作微博图片爬取工具
2021/01/16 Python
米兰必去买手店排行榜首位:Antonioli
2016/09/11 全球购物
物理力学求职信
2014/02/18 职场文书
公司授权委托书
2014/04/04 职场文书
房产买卖委托公证书
2014/04/04 职场文书
心得体会的写法
2014/09/05 职场文书
2016年“六一儿童节”校园广播稿
2015/12/17 职场文书
初中物理教学反思
2016/02/19 职场文书
python神经网络学习 使用Keras进行简单分类
2022/05/04 Python