我正在使用Phonegap创建一个iPad应用程序。该应用程序具有固定的横向方向和沿顶部运行的菜单,右上方有一个文本框。该应用程序是固定的(全屏)尺寸,不需要滚动。
当用户触摸iOS 6右上角显示的文本框时,整个应用程序向左滑动,以便将文本框放在屏幕中央,向左推动整个应用程序并在右侧留下空白区域
如何防止此行为?
我目前将UIWebViewBounce设置为NO并使用以下代码来捕获touchstart事件:
document.body.addEventListener('touchmove', function(e) {
e.preventDefault();
}, false);
我在文本框上也有这个,这似乎适用于iOS 5(虽然有口吃)但在iOS 6上没有:
$('#searchText').on("focus", function(event) {
window.scrollTo(0, 0);
});
非常感谢任何帮助。
答案 0 :(得分:3)
尝试在onfocus
中的input
属性中添加此javascript,以便在关注时不想转移:
<input onfocus="this.style.webkitTransform = 'translate3d(0px,-10000px,0)'; webkitRequestAnimationFrame(function() { this.style.webkitTransform = ''; }.bind(this))"/>
答案 1 :(得分:-1)
尝试将以下css样式添加到您的身体元素:
-webkit-touch-callout: none;
-webkit-user-select: none;
-khtml-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
-webkit-tap-highlight-color: rgba(0,0,0,0);
它阻止用户选择链接和其他内容。也许这对你来说很有帮助。