JQuery UI:优点和缺点?

我最近一直在努力简化我的网站,并倾向于我的HTML和Javascript。 我已经开始用jQuery JavaScript替换我网站上的MS Ajax.Net JavaScript,现在我正在查看一些我用于弹出窗口,标签控件和按钮的html。

几个星期前JQuery UI引起了我的注意,我已经研究了一段时间,但我害怕直接进入它。 我喜欢主题,我喜欢它使用“ 精灵”像CSS魔术图标。 但我注意到CSS圆角在IE中不起作用。

所以我想知道,你们当中有没有人正在使用jQuery UI? 如果是这样,你使用的是什么部分? 你有定制的吗? 您遇到了哪些优点和缺点?

提前感谢您的回答。

顺便说一下,我今天第一次开始使用jQuery :)我只是jQuery的新手,但我已经处理了足够的JavaScript和其他框架(原型,scriptaculous等等)以了解最新情况。

jQuery非常易于使用。 内置function非常全面。 兼容性很好。 在插件的帮助下,它们甚至在IE6中支持大多数事情。

我已经尝试了大多数常见的UI元素 – 对话框,手风琴,标签和一些UI效果,动画,淡入淡出和其他东西。 事实上,我花了不到1个工作日来了解所有这些并与它们一起玩,并在我当前的网站上实现它们,这说明了非常小/短的学习曲线 。 ( 也见这个 )

主题比我见过的任何框架都容易。 他们有一个很好且易于使用的主题构建器,名为ThemeRoller 。 手动更改CSS几乎是不必要的。 您只需使用WYSIWYG编辑器更改所有内容并下载已编辑的主题即可。 这接近专业($$$)应用程序!

非常轻 – 约19KB。 与我遇到的其他一些怪异的框架不同。

没有遇到任何问题,但……显然。 一直只使用它一天。 但是根据经验(新框架的第一天从来没有顺利地为我:)),我不期待很多问题。

jQuery.UI中最好的东西之一我认为是widget工厂,它为您提供了创建自己的插件的快捷方法。

检查出来: UI_Developer_Guide

如果你是从头开始,我建议你也看看ExtJS。

我喜欢JQuery,但我发现有太多的UI插件是错误的。 由于ExtJS的第三方插件较少 – 我通常会发现ExtJS提供的内容足够 – 我使用ExtJS的问题更少。 由于我喜欢JQuery的低级DOM操作function,所以我通常在ExtJS下面使用它。

我一年前用过它。 如果其中一个小部件符合您的需求,那就太好了。 我喜欢Themeroller。

但是,总的来说,我对jQueryUI并不感到兴奋,我不会再使用它了。 在累积的感觉不悦之前,有几件小事在困扰着我。 我不得不打模型对话框。 手风琴动画在某些浏览器中很容易出现。 在至少一些小部件中,UI的hover状态与其抑制状态之间没有区别。

示例: http : //jqueryui.com/demos/accordion/至少在我正在运行的Chrome浏览器中,此演示的动画问题实际上导致动画期间出现滚动条。

我不明白为什么至少一年内没有添加任何小部件。

我认为我对jQueryUI的许多失望来自于我对jQuery的喜爱程度以及我对与之相关的官方小部件库的期望。

我只使用了组中的UI Dialog 。 它适用于IE8的所有浏览器。 使用modal:true时,它消耗了100%的CPU modal:true 。 在取消以下行后,它就像一个魅力:

 $(window).bind('resize.dialog-overlay', $.ui.dialog.overlay.resize); 

如有必要,您可以在特定行中添加if (!($.browser.msie && $.browser.version >= 8)) 。 错误修复似乎是针对1.8。

从其余的UI组件中我没有任何需要使用它们。 检查错误后,我也没有强烈的感觉库。 这些家伙肯定在这方面做得很好,它在未来肯定会有所改善,但到目前为止,我还没有足够好地完善它以便在生产中使用。

我已经使用了JQuery Datepicker和一些其他UI模块,以及在项目的大部分内容中使用JQuery。

  • 它是完全可定制的,可以根据您的方便进行修改。

  • 基本上jQuery重量轻,并且编程友好,可以优雅地编写脚本。

  • 我在造型部分而不是在function上进行了更多调整,以实现所需的外观和感觉。

到目前为止,我没有发现任何负面信息,将来我可能会使用更多的JQuery UI模块

谢谢

首先,祝贺切换到jQuery。 这是一个令人难以置信的JavaScript库,如果你像我一样,你会喜欢它。

我在几个网站上使用UI,我最喜欢的只是抓取一个自定义的UI构建来满足我的需求。

我主要将它用于datepicker和sortables,并没有遇到任何问题。 如果您了解如何使用jQuery,我发现它们非常容易定制。

希望有所帮助 – 享受!