首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

代码触发,手动触发touchstart事件,touch事件,click事件,自定义事件

工作中有时候会用到需要用代码去手动触发某个事件或者是自定义事件,通常触发click事件的做法为eleme.click(),遇到touchstart就行不通了。...可以使用以下方式 // 创建事件. var event = document.createEvent('Events'); // 初始化一个点击事件,可以冒泡,无法被取消 event.initEvent('touchstart...', true, false); // 设置事件监听. elem.addEventListener('touchstart', function (e) { // e.target 就是监听事件目标元素...elem.dispatchEvent(event); initEvent已经从 Web 标准中删除,虽然一些浏览器目前仍然支持它,不建议再使用此方法,可以使用Event构造函数 var event = new Event('touchstart...'); //监听 elem.addEventListener('touchstart', function (e) { ... }, false); // 触发event. elem.dispatchEvent

4.7K30

移动端touch事件影响click事件以及在touchmove添加preventDefault导致页面无法滚动的解决方法

为了解决开发者需要,建议开发者在touchstart时调用event.preventDefault,这样就可以保证内核会一起触发touchmove事件了。...之后继续百度,得知当在移动端上点击屏幕时,会依次触发touchstart,touchmove,touchend,click事件。...之后测试了一下,发现正确的触发过程应该是:touchstart→touchmove→touchend或者touchstart→touchend→click。...之后我大胆推测了一下: 会不会是因为在移动端click事件的触发条件就是必须touchstart和touchend同时触发才能触发click呢?...我在touchstart中调用了event.preventDefault方法,是不是让浏览器误以为没有触发touchstart事件,只触发了touchend事件,所以没有触发click事件呢?

3.1K20

移动端前端常见的触摸相关事件touch、tap、swipe等整理

其他浏览器暂未考虑到 一、事件定义及分类 1. click事件 单击事件,类似于PC端的click,但在移动端中,连续click的触发有200ms ~ 300ms的延迟 2. touch类事件 触摸事件,有touchstart...touchmove touchend touchcancel 四种之分 touchstart:手指触摸到屏幕会触发 touchmove:当手指在屏幕上移动时,会触发 touchend:当手指离开屏幕时...2) 查看触发的事件对象 简单地修改,将事件监听中第三个参数置为true,输出完整的事件对象 addEvent(one, 'tap click touchstart touchmove touchend...2、第二根手指放下,触发gesturestart 3、触发第二根手指的touchstart 4、立即触发gesturechange 5、手指移动,持续触发gesturechange 6、第二根手指提起...touchstart) 9、提起第一根手指,触发touchend 还有其他事件有待发觉... gestureend

2K20
领券