1、解决触屏的拖拽问题
选用的cefsharp 的wpf实现,但是进行到一半发现无法在触摸屏上实现滑动和拖动页面,经过一番折腾换到winform平台下,触摸功能能正常使用了。
2、解决双指触控页面缩放的问题
触摸屏上不希望出现双指触控页面缩放,需要单独禁止。加入下面语句能实现。
//禁止触屏双指缩放 settings.CefCommandLineArgs.Add("disable-pinch", "1");
3、解决触屏长按弹出右键菜单问题
在网页的js中设置
document.oncontextmenu = new Function("return false");
在cefsharp中解决右键菜单问题
browser.MenuHandler = new MenuHandler();
internal class MenuHandler : IContextMenuHandler
{ public void OnBeforeContextMenu(IWebBrowser browserControl, IBrowser browser, IFrame frame, IContextMenuParams parameters, IMenuModel model) { model.Clear(); //throw new NotImplementedException(); }public bool OnContextMenuCommand(IWebBrowser browserControl, IBrowser browser, IFrame frame, IContextMenuParams parameters, CefMenuCommand commandId, CefEventFlags eventFlags)
{ return false; //throw new NotImplementedException(); }public void OnContextMenuDismissed(IWebBrowser browserControl, IBrowser browser, IFrame frame)
{ //throw new NotImplementedException(); }public bool RunContextMenu(IWebBrowser browserControl, IBrowser browser, IFrame frame, IContextMenuParams parameters, IMenuModel model, IRunContextMenuCallback callback)
{ return false; //throw new NotImplementedException(); } }附上网上找到的Chromium常见参数
全屏打开网页 –kiosk www.baidu.com
用户数据目录制定 –user-data-dir=”d:\userdata” 禁止双指缩放 –disable-pinch(这个很有用,在触摸设备上) 禁止提示翻译 –disable-translate 最大化 –start-maximized下面的参数 就没有一一试过
1 –allow-outdated-plugins 不停用过期的插件。 2 –allow-running-insecure-content 默认情况下,https 页面不允许从 http 链接引用 javascript/css/plug-ins。添加这一参数会放行这些内容。 3 –allow-scripting-gallery 允许拓展脚本在官方应用中心生效。默认情况下,出于安全因素考虑这些脚本都会被阻止。 4 –disable-accelerated-video 停用 GPU 加速视频。 5 –disable-dart 停用 Dart。 6 –disable-desktop-notifications 禁用桌面通知,在 Windows 中桌面通知默认是启用的。 7 –disable-extensions 禁用拓展。 8 –disable-file-system 停用 FileSystem API。 9 –disable-preconnect 停用 TCP/IP 预连接。 10 –disable-remote-fonts 关闭远程字体支持。SVG 中字体不受此参数影响。 11 –disable-speech-input 停用语音输入。 12 –disable-web-security 不遵守同源策略。 13 –disk-cache-dir 将缓存设置在给定的路径。 14 –disk-cache-size 设置缓存大小上限,以字节为单位。 15 –dns-prefetch-disable 停用DNS预读。 16 –enable-print-preview 启用打印预览。 17 –extensions-update-frequency 设定拓展自动更新频率,以秒为单位。 18 –incognito 让浏览器直接以隐身模式启动。 19 –keep-alive-for-test 最后一个标签关闭后仍保持浏览器进程。(某种意义上可以提高热启动速度,不过你最好得有充足的内存) 20 –kiosk 启用kiosk模式。(一种类似于全屏的浏览模式) 21 –lang 使用指定的语言。 22 –no-displaying-insecure-content 默认情况下,https 页面允许从 http 链接引用图片/字体/框架。添加这一参数会阻止这些内容。 23 –no-first-run 跳过 Chromium 首次运行检查。 24 –no-referrers 不发送 Http-Referer 头。 25 –no-sandbox 彻底停用沙箱。 26 –no-startup-window 启动时不建立窗口。 27 –proxy-pac-url 使用给定 URL 的 pac 代理脚本。(也可以使用本地文件,如 –proxy-pac-url=”file:\\c:\proxy.pac”) 28 –proxy-server 使用给定的代理服务器,这个参数只对 http 和 https 有效。(例如 –proxy-server=127.0.0.1:8087 ) 29 –single-process 以单进程模式运行 Chromium。(启动时浏览器会给出不安全警告) 31 –user-agent 使用给定的 User-Agent 字符串