我从服务器(管理员内部网应用程序)渲染页面然后我想要jQuery UI并保持与所选jquery ui主题一致。
以示例按钮
为例<button class="do-something">Logout</button>
jQuery UI文档说不应该手动应用ui-state-default和37个其他CSS类(在服务器渲染时),但在初始渲染时应该调用$(selector).button()
,其中selector可能只是'button '或'.nice-button'等..
这对我来说似乎有点臭,但我认为细粒度控制有意义,因为它不打算像ExtJS或Sproutcore等那样高级。
然后我想到了一个我认为<button class="do-something ui-icon-arrow-e">Logout</button>
的图标按钮,当调用.button()
时,它会检查是否存在这样的类并进行相应的渲染。然而,似乎必须做button(icons { pri: 'blah'}})
。让人惊讶。
我接近错了吗?它看起来像一个代码味道在这里混合了很多JavaScript语句纯粹与html之外的渲染相关?我甚至没有考虑过后来通过ajax等注入的东西。
然后我希望有一个像手风琴一样的标题面板,我最终不得不将大约93个CSS类转储到div和h3以使事情保持一致。然后我创建了自己的扩展jQuery $ fn扩展名.crmPanel()
,基本上是parent.addClass
43和parent.children('h3:first').addClass()
53次。似乎凌乱
人们如何在Intranet应用程序中使用jQuery UI,或者您只是纯粹使用该元素并手动执行其他操作?
(注意将与CSS类数量相关的任何定量数字除以4)
答案 0 :(得分:0)
jQuery UI CSS Framework为一些UI元素(如Tabs,Dialogs等)提供了一个很好的基础。我们发现它缺乏,因此通常会添加另一个CSS文件来增强标准CSS和一些CSS3效果,添加排版和网格系统。
结果如下: http://agiletoolkit.org/intro/engage
虽然它仍然基于jQuery UI主题,但它看起来并不像那样。
当谈到按钮时,我们有时会使用jQuery,但有时会使用CSS。在该特定示例中,使用CSS,在其他情况下(选择器)使用.button():
http://codepad.agiletoolkit.org/buttonpushing.html?b=devel
关于面板和布局,与ExtJS相比,jQuery几乎没有任何帮助。此外,我不喜欢JS控制的布局,因为它们很慢而且紧张。我认为CSS是一种可行的方式。