如何提高iPad kiosk web应用程序中按钮的响应能力?

如何提高iPad kiosk web应用程序中按钮的响应能力?,ios,ipad,web-applications,kiosk,Ios,Ipad,Web Applications,Kiosk,我为我们的iPad2信息亭开发了一个网络应用程序,今天刚刚上线。我们几乎所有的客户都在使用触摸屏时遇到问题。他们正在敲打按钮,而应用程序没有显示触摸 我从来没有想到用户与触摸屏交互会有这么大的困难。我想知道,作为一名开发人员,我是否可以做些什么来让它更加用户友好。在触摸和实际注册之间有一点延迟,这使得用户很难知道他们按下了按钮 我可以有把握地说,按钮很大——事实上可能比iOS指南要大——这是一个web应用程序——它不是用Objective-C编写的,而是用PHP和jQuery编写的。所有操作都发

我为我们的iPad2信息亭开发了一个网络应用程序,今天刚刚上线。我们几乎所有的客户都在使用触摸屏时遇到问题。他们正在敲打按钮,而应用程序没有显示触摸

我从来没有想到用户与触摸屏交互会有这么大的困难。我想知道,作为一名开发人员,我是否可以做些什么来让它更加用户友好。在触摸和实际注册之间有一点延迟,这使得用户很难知道他们按下了按钮

我可以有把握地说,按钮很大——事实上可能比iOS指南要大——这是一个web应用程序——它不是用Objective-C编写的,而是用PHP和jQuery编写的。所有操作都发生在web应用程序中,该应用程序使用简单的UIWebView iOS应用程序访问,该应用程序仅连接到站点

澄清一下,有两个问题:

触摸根本没有注册-客户沮丧地越来越用力地按 对于已注册的触摸事件,存在延迟 感谢下面评论中的一些建议,这最终让我想到了这一点,我能够极大地提高web应用程序的响应能力。但我知道我的代码还有待改进。我的应用程序在任何主干mvc之外使用backbone.js和jquery的组合

下面是一个jquery事件的示例,我对其进行了修改,以防止默认的touchend行为—它最初是一个click事件

$('body').on( 'touchend', '#s-id', function(event) {
    event.preventDefault();
    $('form[name=client-login]').submit();
});
以及主干视图的一个示例,它最初也使用单击事件

        var CounterView = Backbone.View.extend({

        el: "body",

        events: {
            "touchend #b-q-prev": "qPrev",
            "touchend #b-q-next": "qNext"
        },

        qNext: function(e){
            e.preventDefault();                 
            this.model.qIncrease();
            this.qShow();
        },

        qPrev: function(e){
            e.preventDefault();                         
            this.model.qDecrease();
            this.qShow();
        },...etc...
实现这些技术解决了我的两个问题,因为应用程序根本不在乎你最初触摸按钮后做什么,一旦你松开它,它就会认为你触摸的原始按钮被按下了。这允许我的客户随意点击触发事件。它还可以更快地解决问题2


我不相信我已经正确地实施了这一点。一个主要的缺点是,当我使用非触摸设备进行测试时,没有事件注册,因为我从java脚本中删除了所有的点击事件。我是否应该查看多个事件,而不仅仅是阻止默认触摸端?根据我所做的研究,没有明确的解决方案——因为jquery mobile尚未实现它?

因为它是实时的,您能否共享URL,以便我们查看您所引用的内容?尽量减少触摸和对触摸的响应之间的延迟?@Jeremey1026它位于我们的内部网络上-不公开visible@onnoweb我怎样才能最大限度地减少延迟?甚至连记录触摸都是一个问题。注意,在iOS上,触发onclick有250毫秒的延迟事件,操作系统尝试等待并查看您是否真的要滚动或其他内容。根据您的需要,您可能可以监听mousedown事件或类似事件,从而避免250毫秒的延迟。既然是活的,,您能否共享URL,以便我们查看您所引用的内容?尽量减少触摸和对触摸的响应之间的延迟?@Jeremey1026它位于我们的内部网络上-不公开visible@onnoweb我怎样才能最大限度地减少延迟?甚至连记录触摸都是一个问题。注意,在iOS上,触发onclick有250毫秒的延迟事件,操作系统尝试等待并查看您是否真的要滚动或其他内容。根据您的需要,您可能可以监听mousedown事件或类似事件,从而避免250毫秒的延迟。