fastclick在ipad上仍然有300ms的延迟

时间:2014-11-24 02:44:30

标签: fastclick.js

我有一个带有fastclick的角度应用程序,因此它会在平板电脑上快速响应。在iOS8中,我们看到点击延迟,因此我将iPad Mini连接到Safari开发工具,并看到Touch End事件和Click事件调度之间的300毫秒延迟。我去创建一个jsfiddle来测试它没有我的应用程序的其余部分,发现这个已经创建:

http://jsfiddle.net/billymoon/zrMxL/

new FastClick($("#fast")[0]);
angular.module('MyApp', ['ui.bootstrap']);

function EditingPageCtrl($scope) {
    $scope.radioModelA = undefined;
    $scope.radioModelB = undefined;
    $scope.fast1 = "this field works quickly, because of fastclick...";
    $scope.fast2 = "this field is slow, because no fastclick";
    $scope.$watch('radioModelA', function (newValue, oldValue) {
        //alert(newValue);    
    });
}

我也将这一个连接到Safari Developer工具,仍然看到300毫秒的延迟。这个jsfiddle是否正确使用了fastclick,如果是这样,是否有理由仍然存在延迟?

1 个答案:

答案 0 :(得分:0)

这不是Angular风格,但尝试将此顶部添加到您的脚本顶部。

window.addEventListener('load', function() {
    FastClick.attach(document.body);
}, false);

这适用于Angular应用程序。