重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
一、原理及实现方法如下:
成都创新互联公司网络公司拥有十余年的成都网站开发建设经验,超过千家客户的共同信赖。提供成都做网站、成都网站设计、成都外贸网站建设、网站开发、网站定制、卖友情链接、建网站、网站搭建、成都响应式网站建设、网页设计师打造企业风格,提供周到的售前咨询和贴心的售后服务
1、当开始一个touchstart事件的时候,获取此刻手指的横坐标startX和纵坐标startY;
2、当触发touchmove事件时,在获取此时手指的横坐标moveEndX和纵坐标moveEndY;最后,通过这两次获取的坐标差值来判断手指在手机屏幕上的滑动方向。
二、注意:
手指在滑动整个屏幕时,会影响浏览器的行为,比如滚动和缩放。所以在调用touch事件时,要注意禁止缩放和滚动。
1.禁止缩放
通过meta元标签来设置。
2.禁止滚动
preventDefault是阻止默认行为,touch事件的默认行为就是滚动。
event.preventDefault()。
最近做移动端的项目,涉及触摸事件很频繁;我接下来介绍下三个基本的触摸事件:
touchstart:触摸开始的时候触发
touchmove:手指在屏幕上滑动的时候触发
touchend:触摸结束的时候触发
下面是我刚写的一个小demo,可以复制体验下,测试的话打开浏览器的开发者工具的手机模式,点击屏幕移动就能体验到了,滚动鼠标是无效的哦~
!DOCTYPE html
html
head
meta charset="UTF-8"
titless/title
style.sb{width: 100%;height: 200px;background-color: red}/style
script typet="text/javascript" src=""/script
/head
body
div style="height: 3000px"
div /div
/div
script
//touchmove 手指不放发生
$('body').on('touchmove',function(){
$('.sb').css({'display':'none'}) //隐藏div
})
//touchend 手指放开发生
$('body').on('touchend',function(){
$('.sb').css({'display':'initial','position':'fixed'}) //显示,固定div
})
/script
/body
/html
不能触发click事件最常见的三种情况:\x0d\x0a 选择器使用错误,没有选择到标签;(请分享html代码分析);\x0d\x0a 标签比jquery方法慢加载,也就是 先加载的方法 , 后加载的标签;解决方法(将script标签与js方法 写在页面的底部 也就是 body 标签的下面)或者如下代码\x0d\x0a\x0d\x0a\x0d\x0a \x0d\x0a \x0d\x0a \x0d\x0a \x0d\x0a $(document).ready(function(){\x0d\x0a $(".test").click(function(){\x0d\x0a alert("333");\x0d\x0a });\x0d\x0a });\x0d\x0a \x0d\x0a 点击事件测试\x0d\x0a \x0d\x0a \x0d\x0a 点击弹出\x0d\x0a \x0d\x0a \x0d\x0a jquery文件或者js文件 导入路径错误或者没有导入 (新手低级错误);\x0d\x0a\x0d\x0a(纯手打,求采纳,已测试代码。梦魂清风 @author:dream breeze)!!