h5 安卓/IOS长按图片、文字禁止选中或弹出系统菜单 的解决方法

最近在做IM的语音功能,发现当长按录音的时候手机会弹出来系统菜单,


IOS下bug形式:
1)长按的标签设置为css background的形式:不会弹出菜单;

2)但是当设置为img时,系统默认识别为保存图片的行为,因而会产生以下系统菜单:

       
3) 当前标签为纯文字时,会弹出选中文字的系统菜单;



安卓的bug形式如下:

  1)当设置为css的background形式时候,系统默认对整个网页进行操作,因而产生以下菜单:

    

  2) 当设置为img标签时,系统默认识别用户为保存图片,因而产生以下菜单:

   

   3) 当长按纯文字的标签时,系统会在1)的基础上增加一个 “选择复制”的菜单项;

 

  解决办法:

 

   1)ios:  禁止选中CSS样式即可,-webkit-touch-callout: none; 或 e.preventDefault();

  2)安卓:只能用js来控制: e.preventDefault();

 

  //另外return false 未测试,有兴趣的同学可以自己动手试试哦。 

  

 

 

 

-------------------------------------------------------------------------------

如有错误,欢迎评论指正、共同提高。[握手]    

欢迎转载,转载请注明:转载自[ http://www.cnblogs.com/juneling ]

posted @ 2018-03-14 18:45  Juine  阅读(2868)  评论(0编辑  收藏  举报