当我单击触摸屏上用于输入数据的文本框时,将显示屏幕键盘,并且屏幕会平滑向上滚动并显示输入内容。但是,当我们单击另一个文本框时,页面将返回其原始状态,并且条目仍保留在后面,因此我们看不到输入的内容。当我们通过在每次单击文本框之前关闭屏幕键盘来做到这一点时,这不是问题,它可以平滑滚动。
注1:CEF版本:v65.0.1.0。
注2:Windows 10 Enterprise 2016 LTSB(版本:1607,操作系统内部版本:14393.3085)。
注3:由于键盘关闭了一些,我从v75切换回了v65 单击文本框后的秒数。对不起,我的英语不好。
注4:代码:
var settings = new CefSettings();
settings.CefCommandLineArgs.Add("no-proxy-server","1");
settings.CefCommandLineArgs.Add("touch-events","enabled");
settings.CefCommandLineArgs.Add("disable-usb-keyboard-detect","1");
settings.CefCommandLineArgs.Add("enable-media-stream","1");
settings.MultiThreadedMessageLoop = true;
var boundObject = new BoundObject();
Cef.Initialize(settings,performDependencyCheck: true,browserProcessHandler: null);
Control.CheckForIllegalCrossThreadCalls = false;
CefSharpSettings.LegacyJavascriptBindingEnabled = true;
chromiumWebBrowser1.MenuHandler = new MyCustomMenuHandler();
var eventObject = new ScriptedMethodsBoundObject();
eventObject.EventArrived += OnJavascriptEventArrived;
chromiumWebBrowser1.RegisterJsObject("boundEvent",eventObject,options: BindingOptions.DefaultBinder);