在app中嵌套h5界面,当用户长按的时候,会触发app端系统默认的交互行为。比如:1.长按文本区域显示文字放大镜,选择指定区域的网页内容,包括文字和图片,执行复制,粘贴等。
2.长按链接对象呼出弹窗框,执行页面跳转或保存图片等
这样的效果很影响美观,有时间用户感觉体验很差。
那么怎么解决禁止长按事件呢?
其实很简单那,只要在移动端页面只要加段js即可。window.ontouchstart=function(){
document.documentElement.style.webkitTouchCallout='none';
};
拓展:
在ios端使用UIWebView组件的情况下,也可以加上一下代码:- (void)webViewDidFinishLoad:(UIWebView*)theWebView
{
[self.webView stringByEvaluatingJavaScriptFromString:@"document.documentElement.style.webkitUserSelect='none';"];
[self.webView stringByEvaluatingJavaScriptFromString:@"document.documentElement.style.webkitTouchCallout='none';"];
}