我的Titanium / iOS应用程序中有一个带有HTML select元素的小型webview。当用户进行选择时,webview会滚动。如何阻止webview滚动?
var html = '<html>';
html += '<head>';
html += '<link rel="stylesheet" href="css/jquery.mobile-1.2.0.min.css"/>';
html += '<script src="lib/attributeForm.js"></script>';
html += '<script src="jq/jquery.min.js"></script>';
html += '<script src="jq/jquery.mobile-1.2.0.min.js"></script>';
html += '</head>';
html += '<body style="overflow: hidden">';
html += '<form style="margin:10px; min-height:500px;" id="attributeForm">'+win.attributeForm+'<br><br><br><br></form>';
html += '</body>';
html += '</html>';
var webview = createWebView({
top: y,
height: 250,
html: html,
disableBounce: true,
});
这是attributeForm.js:
function getAttributes() {
return $('#attributeForm').serialize();
}
document.body.addEventListener('touchmove', function(e) {
// This prevents native scrolling from happening.
e.preventDefault();
}, false);
答案 0 :(得分:2)
我能够通过Web视图中的JavaScript阻止touchmove事件来实现这一目标:
document.body.addEventListener('touchmove', function(e) {
// This prevents native scrolling from happening.
e.preventDefault();
}, false);
您可以在此处查看完整示例:https://gist.github.com/819929
答案 1 :(得分:2)
disableBounce : true
。
答案 2 :(得分:0)
解决方案可能在您的HTML而不是应用代码中......没有看到任何代码很难说,但您可以尝试在网页浏览HTML的overflow: hidden
上设置<body>
。