我使用Telerik AppBuilder和Cordova版本3.5
我的问题是,我不希望我的应用中的webview滚动。每次需要滚动时我都想使用iScroll,我将按照我的代码处理滚动。
如果输入变得焦点并且由于在iScroll中滚动而无法显示,则应用程序会自动滚动webview。
我在清单中使用此代码阻止了在Android中聚焦输入的滚动:
<preference name="android-windowSoftInputMode" value="adjustPan|stateVisible" />
为了防止在打字时滚动,我的下一个想法是:
但是在android v4.4.4中使用以下代码并不能阻止默认:
$input.on( 'keypress', function(e)
{
e.preventDefault();
e.stopPropagation();
return false;
});
这是一个错误吗? 有没有解决方法呢?
编辑:
要查看浏览器正在更改的属性,以便我可以将其更改回来,我查看了一些元素,但无法找到它:
答案 0 :(得分:0)
我知道这是一个老问题, 但我认为你的问题是,当按键事件被触发时,&#39; keydown&#39;事件已经发送到输入,这是发送实际密钥的事件。在按住字符键之后,键盘会被触发。 所以你应该试着防止“彻底打击”这样的事情。事件,也可能是&#39;按键&#39;如果持有重复的信件。
$input.on( 'keydown keypress', function(e)
{
e.preventDefault();
});