我只是想简化我的MVC3开发方法。我在视图中使用Razor,并想知道什么建议可以轻松创建更多花哨的UI小部件,如菜单。我希望我可以利用一些优秀的开源组件并插入它们。我订阅了一个好的第三方组件库,但是想知道这种类型的功能是通过JQuery UI还是旧式HTML / CSS实现的最好?
非常感谢。
答案 0 :(得分:1)
通常,Stack Overflow不会为您推荐工具。但是,我会说是否选择javascript工具或直接html / css取决于需求。
最好使用最简单的解决方案来解决您的问题。 CSS可以很好地完成菜单,直接的CSS菜单通常是最好的选择。但是,如果你需要直接css不能做的事情,那么你需要添加javascript。例如,CSS菜单的一个问题是,很容易“滚动”菜单并让它从指针下面消失。大多数javascript菜单都会添加一个延迟,允许您在菜单消失之前滚动一秒钟并返回。这提高了可用性。
即使很多花哨的效果也可以在CSS中严格完成,但与许多此类内容一样......它不会兼容所有浏览器,这也是javascript发挥作用的地方。有时,全面兼容的唯一方法是使用js(至少不会丢失功能)。
答案 1 :(得分:1)
我不会在这个上重新创建轮子,因为很多网站已经这样做了。如果您正在尝试简化开发,我会说使用您的第三方库或找到一个好的jQuery插件。您可以轻松地在HTML / CSS / Jquery中创建自己的,但它会在以后添加到您的测试中。现有的第三方/ jQuery类型的组件将花费更少的时间并且具有您想要内置的许多功能。
答案 2 :(得分:0)
我建议使用选择的JavaScript菜单在conjcuyion中使用MVC SiteMap Provider,例如SuperFish http://users.tpg.com.au/j_birch/plugins/superfish/。菜单花哨的JS部分是最不重要的。
从MVC的角度来看,我认为真正重要的是如何管理和维护菜单。 MVC SiteMap Provider使构建维护菜单变得非常容易(甚至可以使用Attributes来使Actions出现在菜单上)。它还可以执行安全修整等操作,因此如果用户没有获得操作等权限,则不会显示在菜单上。
我要检查一下。