我正在寻找能够在下一页视图上序列化/重新水合元素或UI组件的组件/框架。类似于$.serialize()
的东西,但是对于元素的属性(例如:visibility,width,top,left)。
jQuery中的所有功能都是手动完成的,但我正在寻找一个框架,它比我迄今为止更好地探索了这个功能的问题/缺陷。
服务器端我使用的是asp.net,但它确实是我正在寻找的客户端功能。我希望实际状态在cookie中持久存在,或者在服务器上持久存在。
我意识到我正在寻找的功能是在Web部件中实现的。我希望得到一个轻量级的框架。我对投资网页零件并不太兴奋。
我想要实现的一个例子: 我想创建一个包含5到10个div的页面,以网格实时方式布局。类似仪表板的UI。有一个默认布局,但用户可以隐藏一些区域&扩展其他人以获得他们关心的数据的最佳视图。除了div之外,还有其他小部件:标签,手风琴等。它们不需要,但我们假设UI由jQuery UI提供支持。用户下次登录时,我应该能够恢复用户的页面状态。
在开始使用自定义功能之前,我想确保我不会重新构建一个轮子。
答案 0 :(得分:2)
您可能希望查看knockout.js,这是一个模型 - 视图模型javascript框架。
它处理诸如将DOM元素属性同步到模型之类的事情。
以下是主页:http://knockoutjs.com/
它具有通过JSON加载和保存的指导:http://knockoutjs.com/documentation/json-data.html
然而,我建议首先进行交互式教程,因为它确实展示了它的强大功能,并将帮助您收集它是否适合您的问题:http://learn.knockoutjs.com/
答案 1 :(得分:0)
或者您可以在数据库中保存状态,以便将其存储在用户会话中,或者您可以创建一些客户端代码,用于在客户端计算机上的cookie中存储状态
这是第二个选项的类似示例,用于将其存储在cookie中
Jquery - save class state for multiple div #'s to a cookie?
以及帖子提供的代码:http://pastebin.me/d99bd40618a7b9e2bd88c40cee777f5f
答案 2 :(得分:0)
检查PersistJS库 http://pablotron.org/?cid=1557
它有很多功能
它目前通过以下后端支持持久客户端存储:
cookie:基于Cookie的持久存储。