我已经为我的公司创建了一个小的 HTML5网络应用程序。
这个应用程序显示一个项目列表,一切工作正常。
该应用程序主要用于 Android 手机和 Chrome 浏览器。此外,该网站保存在主屏幕上,所以安卓管理整个事情作为一个应用程序(我猜是通过网络视图)。
ChromeBeta (我认为也是 Android 系统的 WebView)引入了“下拉刷新”功能(See this link for example)。
这是一个方便的功能,但我想知道它是否可以禁用一些元标记(或 javascript 的东西) ,因为刷新可以很容易地触发由用户导航列表和整个应用程序重新加载。
这也是应用程序不需要的特性。
我知道这个功能仍然只在 Chrome 测试版中有效,但是我有一种感觉,这个功能也将登陆到这个稳定的应用程序中。
谢谢!
编辑: 我已经卸载了 Chrome Beta,主屏幕上的链接现在可以用稳定的 Chrome 打开了。所以固定链接是从 Chrome 开始的,而不是从 webview 开始的。
编辑: 今天(2015-03-19)下拉刷新已经到了稳定的铬。
编辑: 从@Evyn 的回答,我按照 这个链接得到了这个 javascript/jquery 代码。
var lastTouchY = 0;
var preventPullToRefresh = false;
$('body').on('touchstart', function (e) {
if (e.originalEvent.touches.length != 1) { return; }
lastTouchY = e.originalEvent.touches[0].clientY;
preventPullToRefresh = window.pageYOffset == 0;
});
$('body').on('touchmove', function (e) {
var touchY = e.originalEvent.touches[0].clientY;
var touchYDelta = touchY - lastTouchY;
lastTouchY = touchY;
if (preventPullToRefresh) {
// To suppress pull-to-refresh it is sufficient to preventDefault the first overscrolling touchmove.
preventPullToRefresh = false;
if (touchYDelta > 0) {
e.preventDefault();
return;
}
}
});
正如@bc 完整性所指出的,我希望将来能有一个站点清单解决方案(和/或元标记)。
此外,欢迎对上述守则提出建议。