Kiosk Web App jQuery实现

时间:2012-06-21 22:20:28

标签: javascript jquery kiosk

我有一个相对简单的网络应用程序,作为我正在修改的自助服务终端。我最初的目标只是让它工作,但现在我正在努力实现更优雅的方法。

基本背景信息:

  • 内容 - 所有内容都来自数据库,通过php - 响应ajax调用或直接用php(大多数内容)回显内容。这部分我已经修改过,虽然仍然不完美,但是相当有效/灵活。
  • 自助终端的作用 - 我们的客户使用自助服务终端进行一次或多次调查。表单通过验证后,将提交数据。如果这是最后一次调查,则会话结束。如果有更多的调查,他们会继续进行调查。

问题: 我有一个混乱的jQuery事件处理程序来控制自助服务终端的行为。基本上,行为包括根据信息亭所处的状态显示/隐藏DOM中已有的元素。

  • 切换说明
  • 切换退出屏幕(提前结束调查)
  • 转到下一个/上一个调查问题
  • 空闲计时器,显示自动注销警告(再次显示/隐藏不是警报)
  • 如果答案不够,
  • 显示错过的问题
  • 如果表单通过简单验证,则提交表单

我添加的调查越多,遇到的特殊情况就越多,jQuery看起来就越混乱。仅包含单选按钮的调查很容易(虽然代码仍然不优雅)但我似乎正在处理那些有疑问的问题(依赖于其他问题的问题)和文本回复作为特殊情况我希望能够对jQuery采取更模块化/ OOP方法。

我考虑过......

  • 原型
  • jQuery UI Widget Factory
  • 编写自己的jQuery插件
  • 编写自己的javascript类
  • Knockout.js
  • 继续当前的jQuery方法,只是清理它

提前感谢您提供专业知识,并根据我的项目背景指出正确的方向。

1 个答案:

答案 0 :(得分:0)

Backbone.js将是解决此问题的绝佳方法。这种方法将通过......解决我的问题。

  • 将模型与视图分开
  • 利用继承,我可以创建具有标准行为和子类的基类来实现某些调查元素的特殊行为
  • Backbone.js非常轻巧,“与其他人合作”