我一直在使用jQuery UI进行一些基本的页面增强。按钮和输入样式以及模式对话框。现在,我遇到了Bootstrap,它看起来还不错。
有没有从使用jQuery UI到Bootstrap的经验?这是我想做的事情,但是在我这样做之前,我想知道我可能会遇到什么问题。
我一直在使用jQuery UI进行一些基本的页面增强。按钮和输入样式以及模式对话框。现在,我遇到了Bootstrap,它看起来还不错。
有没有从使用jQuery UI到Bootstrap的经验?这是我想做的事情,但是在我这样做之前,我想知道我可能会遇到什么问题。
Answers:
我有几个项目。
我认为最大的不同
jQuery UI是后备安全的,它可以正常工作并且在旧的浏览器中看起来不错,其中Bootstrap基于CSS3,这在新的浏览器中基本上意味着GREAT,而在旧的浏览器中则不那么出色
更新频率:Bootstrap有了一些很棒的新功能,进行了重大更新,但可悲的是,它们可能会破坏以前的代码,因此,您不能只安装Bootstrap并在有新的主要版本时进行更新,它基本上需要大量的新代码
jQuery UI基于良好的html结构,并具有JavaScript的转换功能,而Bootstrap基于外观和可自定义的内联结构。(在JQUERY UI中调用小部件,在Bootstrap中定义它)
那么该选择什么呢?
这始终取决于您正在处理的项目类型。美观,快速的小部件会更好吗,还是您的用户经常使用旧的浏览器?
我总是同时使用两种方法,因此可以同时使用两种方法中的最佳方法。
如果您决定使用它们,则这是这两个框架的链接。
button button-primary button-small
,在jQueryUI中,您将元素分配为按钮,即只需添加“ btn”,然后通过JS使其成为按钮$(".btn").button()
。这意味着在Bootstrap中,在HTML中定义它,然后在jQueryUI中在JS中定义它。如果在jQueryUI上更新/更改某些内容(即Bootstrap版本),则Bootstrap上的负数就是您需要编辑HTML,而这通常更容易。两者都有正负!:)
两者都使用过后,Twitter的Bootstrap是一种出色的技术组合。这里有一些区别,
其他注意事项
您可以同时使用相对较少的问题。Twitter Bootstrap使用jQuery 1.7.1(在撰写本文时),并且我无法想到无法将其他Jquery UI组件集成到HTML模板中的任何原因。
我一直在使用Initializr.com构建的HTML5 Boilerplate和Twitter Bootstrap的组合。它将两个很棒的入门模板组合到一个出色的入门项目中。在http://html5boilerplate.com/和http://www.initializr.com/上查看详细信息。 或者立即开始使用,请访问http://www.initializr.com/,单击“ Bootstrap 2”按钮,然后单击“下载”。这将为您提供入门所需的所有js和CSS。
而且不要被HTML5和CSS3吓到。Initializr和HTML5 Boilerplate包括polyfills和IE特定代码,这些代码将允许所有功能在IE 6、7 8和9中运行。
在Twitter Bootstrap中使用LESS也是可选的。他们使用LESS编译Bootstrap使用的所有CSS,但是如果您只想覆盖或添加自己的样式,则为此提供一个空的CSS文件。
还有一个空白js文件(script.js)供您添加自定义代码。在这里可以为其他jQueryUI组件添加处理程序或选择器。
我们两者都使用过,并且我们喜欢Bootstrap,因为它的简单性以及其开发和增强的速度。jQuery UI的问题在于它以蜗牛的步伐前进。推出菜单栏,树控件和数据网格等通用功能需要数年之久,而这些功能始终处于计划/开发阶段。我们等了再等,最后放弃了,并为我们的产品http://dblite.com使用了其他ExtJS库。
Bootstrap在很短的时间内就提供了相当全面的功能,我相信它很快就会超过jQuery UI。
因此,我认为使用最终会过时的东西毫无意义...