屏蔽移动端浏览器的长按事件

  最近做了一个图片阅后即焚的网页在移动端浏览,过程是按住屏幕并移动时,图片会慢慢展示,松开手时图片立即粉碎消失。

  但是长按图片时会触发浏览器自带的长按事件,从网上搜索得知有以下两种方法:

  1.添加事件   ontouchstart = "return false;"

  2.css统一加上 -webkit-user-select:none; -webkit-touch-callout:none;

  但是上述方法对页面的其他需求有影响,最终我采用的方法是,写一个空的透明的DIV置于页面最上层遮住所有元素,这样就可以避免系统的长按事件,在需要屏蔽长按事件时,隐藏DIV即可,DIV样式:{position:fixed;width:100%;height:100%;z-index:99;background:rgba(255,255,255,0);overflow:hidden;top:0px;left:0px;}

PS:过程中还遇到一下小问题就是,在需要长按二维码识别的页面,已经移除了当前页面的遮罩DIV,但是长按还是没反应。

  二维码开始样式是:{width:46%;position:fixed;left:27%;top:40%;}

  后来发现必须给二维码加上层高 z-index:100;大于遮罩DIV的层高。

时间: 2024-11-29 09:12:30

屏蔽移动端浏览器的长按事件的相关文章

在 WPF 中如何在控件上屏蔽系统默认的触摸长按事件

来源:https://stackoverflow.com/questions/5962108/disable-a-right-click-press-and-hold-in-wpf-application 在控件上可以设置一个属性: Stylus.IsPressAndHoldEnabled 设置为 False 即可屏蔽触摸长按事件的触发. 参考文档:http://msdn.microsoft.com/en-us/library/system.windows.input.stylus.ispres

h5移动端阻止浏览器长按事件

移动端长按图片或者元素的时候会出现默认的浏览器事件,这样会影响自定义的长按行为,很麻烦.微信的图片和元素的长按事件效果如下 找到了一个方式去掉首先要把图片放到div的背景图片中(用图片试了不行,如果有大神可以指点下),这样再长按的时候长按的是DIV 代码如下,注意引jQuery //长按触发事件 $.fn.longLongPress = function () { var div = $(this); $(this).on({ touchstart: function(e){ console.l

移动端的长按事件

代码 <!DOCTYPE html> <html> <head> <meta charset="utf-8"/> <title></title> <script type="text/javascript" src="http://lib.sinaapp.com/js/jquery/1.9.1/jquery-1.9.1.min.js"></script>

移动端的长按事件的实现

代码 <!DOCTYPE html> <html> <head> <meta charset="utf-8"/> <title></title> <script type="text/javascript" src="http://lib.sinaapp.com/js/jquery/1.9.1/jquery-1.9.1.min.js"></script>

js 监听浏览器刷新还是关闭事件

原作者的文章地址:http://udn.yyuap.com/forum.php?mod=viewthread&tid=96309 页面加载时只执行onload 页面关闭时只执行onunload 页面刷新时先执行onbeforeunload,然后onunload,最后onload. 经过验证我得出的结论是: //对于ie,谷歌,360: //页面加载时只执行onload //页面刷新时,刷新之前执行onbeforeunload事件,在新页面即将替换旧页面时onunload事件,最后onload事件

移动端浏览器前端优化

相对于桌面端浏览器,移动端Web浏览器上有一些较为明显的特点:设备屏幕较小.新特性兼容性较好.支持一些较新的HTML5和CSS3特性.需要与Native应用交互等.但移动端浏览器可用的CPU计算资源和网络资源极为有限,因此要做好移动端Web上的优化往往需要做更多的事情.首先,在移动端Web的前端页面渲染中,桌面浏览器端上的优化规则同样适用,此外针对移动端也要做一些极致的优化来达到更好的效果.需要注意的是,并不是移动端的优化原则在桌面浏览器端就不适用,而是由于兼容性和差异性的原因,一些优化原则在移

移动端触摸(touch)事件

移动端时代已经到来,作为前端开发的我们没有理由也不应该坐井观天,而是勇敢地跳出心里的那口井,去拥抱蔚蓝的天空.该来的总会来,我们要做的就是接受未知的挑战.正如你所看到的,这是一篇关于移动端触摸事件的文章,也就是我们平时在手机中用得最多的动作:touch.现在让我们开始 touch touch touch 吧! Touch 事件 首先 touch 包含三类事件,它们分别是:touchstart.touchmove.touchend .望文生义这种本能相信你应该会有,但在这里我还是有必需对这三个词进

vue中的长按事件和点击事件冲突

<div> <img src="/static/images/poi-marker-default.png" @touchstart.prevent="touchin()" @touchend.prevent="clickhandle()" > </div> data() { return { Loop:0 } }, methods: { touchin(index){ // 长按事件,按住后等待指定事件触发

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

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