移动web js触屏事件 按下 松开 滑动

移动web js触屏事件 按下 松开 滑动讲解

一、触摸事件

ontouchstart

ontouchmove

ontouchend

ontouchcancel

前移动端浏览器均支持这4个触摸事件,包括IE。由于触屏也支持MouseEvent,因此他们的顺序是需要注意的:

touchstart → mouseover → mousemove → mousedown → mouseup → click1

/*** onTouchEvent*/


1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

var div = document.getElementById("div");

//touchstart类似mousedown

div.ontouchstart = function(e){

//事件的touches属性是一个数组,其中一个元素代表同一时刻的一个触控点,从而可以通过touches获取多点触控的每个触控点

//由于我们只有一点触控,所以直接指向[0]

var touch = e.touches[0];

//获取当前触控点的坐标,等同于MouseEvent事件的clientX/clientY

var x = touch.clientX;

var y = touch.clientY;

};

//touchmove类似mousemove

div.ontouchmove = function(e){

//可为touchstart、touchmove事件加上preventDefault从而阻止触摸时浏览器的缩放、滚动条滚动等

e.preventDefault();

};

//touchend类似mouseup

div.ontouchup = function(e){

//nothing to do

};

 

三、重力感应

重力感应较简单,只需要为body节点添加onorientationchange事件即可。

在此事件中由window.orientation属性得到代表当前手机方向的数值。window.orientation的值列表如下:

0:与页面首次加载时的方向一致

-90:相对原始方向顺时针转了90°

180:转了180°

90:逆时针转了90°

测试,Android2.1尚未支持重力感应。以上即目前的触屏事件,这些事件尚未并入标准,但已被广泛使用。未在其他环境下测试。

//以上为转载。下面是偶在做电子阅读的实例

1)随手指滑动,需要滑动的区域<div id="#roll" ontouchmove="tmove(event)"></div>


1

2

3

4

5

6

7

8

9

10

11

<script type="text/javascript">

var u = $(‘#roll‘);

function tmove(evet){

var touch = evet.touches[0];

var x = touch.clientX;

var y = touch.clientY;

var left = $("#roll").css("left");

$("#roll").animate({left:"-264px"},1000);

evet.preventDefault();

}

</script>

2)手指滑动离开后触发需要滑动的区域<div id="#roll" ontouchend="tend(event)" ontouchstart="tstart(event)"></div>


1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

var down = 0;

var up = 0;

var index=0;

var w = 64;

function tstart(event)

{

down=event.changedTouches[0].pageX;//获取手指刚触摸时的x坐标

}

function tend(event)

{

up=event.changedTouches[0].pageX;//获取手指离开时的x坐标

ul_obj = $("#roll");

if(down>up)

{//向左

$("#roll").animate({left:(index+"px")},1000);

index = index-64<=-180?-180:index-w;

}

else if(down<up)

{//向右

$("#roll").animate({left:((index+w)+"px")},1000);

index = index+64>0?0:index+w;

}

}

3)还有就是电子书别的一些用到滴~帮助记忆~

3.1 ) 清空文本框:


1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

$("input").attr("value","");

3.2 ) setIntervar(function(){ },1000) 设置自动轮播图

setInterval(function (){ 

if (i > $(‘.img ul li img‘).length - 2) 

{

i = 0;

$(‘.dot a‘).removeClass(‘at‘).eq(i).addClass(‘at‘); 

}

else{

i++;

$(‘.dot a‘).removeClass(‘at‘).eq(i).addClass(‘at‘);

}

$(‘.img ul‘).animate({left:-300*i},1000)

},2000);

3.3 )setTimeout(function(){},1000) 设置一定时间后触发事件

setTimeout(function (){ 

$(‘#feedOk‘).hide();

$("#read a").html(“下载成功!”);

document.location.href="index.html";

},2000);

3.4)返回上一页


1

<a href="javascript:history.back()" class="back"></a>

原文地址:https://www.cnblogs.com/yangslin/p/9271314.html

时间: 2024-11-05 21:46:34

移动web js触屏事件 按下 松开 滑动的相关文章

Android的触屏事件

Android系统中的每个View的子类都包含的三种和touchevent有关的三种方法. ondispathTouchEvent(); 这个方法用来分发TouchEventonInterceptTouchEvent(); 这个方法用来拦截TouchEventonTouchEvent: 这个方法用来处理TouchEvent 每次触屏事件,都有最顶层的View的ondispathTouchEvent()接受,由这个方法进行分发.当方法返回true时 ,就将触屏事件传递给该View的OntouchE

【COCOS2D-X 备注篇】cocos2dx 获取手机截屏等意外取消触屏事件的处理方法!

最近有童鞋问我如何获取到iphone手机截屏的事件,所以本篇就简单的聊下这种问题的处理办法. 在cocos2dx引擎中,我们能在AppDelegate中获取到,用户将应用切入后台,以及重新返回应用的事件函数.那么对应的,cocos2dx也在引擎中给予我们截取屏幕等这种只能手机应有事件的处理函数. 其实大家应该都很熟悉截取用户触屏的函数,如下: 1 2 3 4 // default implements are used to call script callback if exist virtu

移动端touch触屏滑动事件、滑动触屏事件监听!

移动端touch触屏滑动事件.滑动触屏事件监听! 一.触摸事件 ontouchstart.ontouchmove.ontouchend.ontouchcancel 目前移动端浏览器均支持这4个触摸事件,包括IE.由于触屏也支持MouseEvent,因此他们的顺序是需要注意的:touchstart → mouseover → mousemove → mousedown → mouseup → click1 Apple在iOS 2.0中引入了触摸事件API,Android正迎头赶上这一事实标准,缩小

Android 触屏事件 OnTouch onClick onTouchEvent对于触屏事件的处理和分发

Android 触屏事件 OnTouch onClick onTouchEvent对于触屏事件的处理和分发 做项目的时候经常遇到需要事件分发,很多时候我们发现当我们触发了onTouch却触发不了onClick.或者触发了View的事件却触发不了ViewGroup的事件.那么他们之间到底是什么关系呢,其实最终他们涉及的只是两个问题 OnTouch .onClick .onTouchEvent 之间的关系 OnTouch .onClick .onTouchEvent 之间的处理顺序 这里,我做了简单

html5之移动触屏事件

HTML5的javascript touch事件 HTML5+CSS3, javascript Add comments 四282013 以下是几种普及得比较好的触摸事件,可以在绝大多数现代浏览器中来测试这一事件(必须是触屏设备): (on)touchstart:触摸开始的时候触发 (on)touchmove:手指在屏幕上滑动的时候触发 (on)touchend:触摸结束的时候触发 (on)touchcancel:系统取消touch事件的时候触发.例如电话接入或者弹出信息.一般用在游戏:玩着的时

android实现横竖屏8个方向触屏事件的捕捉并有相对应的动画提示

1:首先来说横竖屏的问题 这里我是在onCreate方法中直接强制横屏竖屏的设置, Button btn; SurfaceView surfaceView; //初始化布局 protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); init(); addListener(); } //初始化 pri

转:Android随笔之——使用Root权限实现后台模拟全局按键、触屏事件方法(类似按键精灵)

本文转载自CSDN的jzj1993,原文连接:http://blog.csdn.net/jzj1993/article/details/39158865 有时我们需要使用安卓实现在后台模拟系统按键,比如对音量进行调节(模拟音量键),关闭前台正在运行的App(模拟返回键),或者模拟触屏事件.但是对于原生安卓系统而言,后台进程关闭前台进程,甚至模拟用户事件,进而操控整个系统,是不符合系统安全原则的,如果有这样的漏洞被病毒或恶意软件所利用,会非常危险. 由于一些特殊原因,我恰巧需要实现这样的功能,而又

cocos2dx触屏事件详解

版本:2.x 平台iso 先看mian.m文件 //创建一个iso应用 int retVal = UIApplicationMain(argc, argv, nil, @"AppController"); iOS系统会调用AppController 的 didFinishLaunchingWithOptions函数,里面做了一些创建界面的东西 该函数内部有如下代码: cocos2d::CCApplication::sharedApplication()->run(); 注:*.m

Android触屏事件传递(个人实践总结)

Android触屏事件传递 一:前言 之前由于做Launcher部分,涉及到许多交互的部分,因为项目过去很长时间了,最近又在做GTS,CTS的测试与修改,好多都不熟悉甚至忘记了,结合别人的文章经验(我发现有些地方和别人有出入,但自己经测试验证),加上自己的测试,今天写下文章来总结一下. 二:关于ViewGroup与其中的view视图 ViewGroup是一个容器类,一般,布局容器是继承字它的.容器里面可以存放视图,当然也可以嵌套容器,比如Relativelayout,LinearLayout等等