说说jQuery UI 1.8的组件体系特点

jQuery以其良好的api设计在前端开发中造成了极大的影响力,他们的“write less do more”这个宗旨得到了充分的体现,但是他的UI库又是一个怎么样的体系结构呢,他们的UI库的api设计的怎么样呢?

我还是通过一段伪代码,来演示下如何来写一个jQuery UI组件:

 

(function($) {

//私有变量和方法
这里是代码
$.widget("ui.dialog", {//组件名称
//共有方法和属性,定义在prototype上
options: {//配置属性
},
_create: function() {
//dom操作
//绑定事件
},
//执行默认的动作
_init: function() {
if ( this.options.autoOpen ) {
this.open();
}
},
//销毁组件
destroy: function() {
},
//返回生成组件的dom元素
widget: function() {
return this.uiDialog;
},
//设置和获取配置项
option: function(key, value){

$.Widget.prototype._setOption.apply(self, arguments);
}
}
});

$.extend($.ui.dialog, {
//类属性和方法
});
}(jQuery));
如果用到继承
$.widget($.ui.Simpledialog, $.ui.dialog ,{
//共有属性和方法在这里定义
})

这里我们可以看到只要调用$.widget(String name, Options prototype).,就可以生成一个jQuery UI的组件,那么这个方法帮我们做了什么工作呢?

1.       如果仅仅生成一个独立的组件,我们直接调用$.widget(String name, Options prototype),其中第一个方法就是组件的名称,第一个参数就是组件的一些共有属性和方法。

2.       如果需要用到继承,我们就用$.widget(String name, String baseName,Options prototype),这个的第二个参数就是基类的名称了。

3.       $.widget向我们提供了create方法来生成dom和绑定事件,_init方法来执行一些默认的动作,_setOption来设置一个配置属性项,widget用来获取生成组件的外层dom元素,destroy用来销毁组件,option()用来获取和设置配置项,我们可以再自己写的组件中覆盖这些方法。

 

使用dialog控件:

 

 

$('#dialog').dialog({
autoOpen: false,
show: 'blind',
hide: 'explode'
});
初始化后设置配置项:
$( ".selector" ).dialog( "option", "autoOpen", false );

获取配置项:
$( ".selector" ).dialog( { autoOpen: false } );
初始化后绑定事件:
$( ".selector" ).bind( "dialogopen", function(event, ui) {});
初始化后调用方法:
$( ".selector" ).dialog( "open" )
  

 

 

 

Ok,现在为止我们已经会开发和使用用jQuery UI1.8开发的dialog,我们来总结下jQueryUI1.8库的一些特点:

1.       在API的使用上仍然秉承了jQuery核心库的特点,获取和设置属性使用同一个方法。

2.       在$.widget没有为控件绑定事件的接口,必须自己手工在create中进行绑定。

3.       jqueryUI有着强大的自定制组件的功能,我们很方便你的自定义的自己的样式的组件,具体请看(http://jqueryui.com/themeroller/

 

虽然JQueryUI1.8有很优秀的地方,但是由于它的组件都是第三方贡献的,代码的可维护性较差,也没有代码的管理结构,性能方面也比较牵强,因此组织大型的RIA应用的时候,如果您不是一个JavaScript ninja,您还是不要使用这个ui框架了,总之它的ui库还是比较年轻。但是可以使用jQuery核心库,核心库还是很风光的,欢迎大家看这边文章http://news.csdn.net/a/20100327/217617.html。

 

 

 

时间: 2024-08-31 01:46:47

说说jQuery UI 1.8的组件体系特点的相关文章

这 5 个前端组件库,可以让你放弃 jQuery UI

在建立Web应用时,通常都需要用到一些有用的UI组件.无论应用中需要的是日历,滑块,图形或其它用于提升或简化用户交互的组件,那么都面临两种选择:要么自己来创建这些组件,要么使用现有的组件功能. 自行开发这些组件是复杂并耗时的,通常会花费大量的时间来独自完成这些组件,这也正是UI库和框架存在的意义.现存的这些库简化了创建UI组件的过程.你可以直接利用现有的框架,并自定义它们来满足自己的需求. 目前正在广泛使用的框架之一就是jQuery UI.这是一组扩展的使用jQuery构建的部件.效果和主题,分

jQuery入门(20) jQuery UI基本工作过程

本篇介绍JQuery UI组件的基本工作过程,以进程条(Progressbar)为例介绍JQuery UI组件工作的 基本过程. 初始化 大部分JQuery Ui组件都可以保持其状态,因此为了能够跟踪UI组件的状 态,jQuery UI组件也有一个生命周期,这个生命周期从初始化开始,为了初始化一个UI组件,一般在 某个HTML元素调用UI组件(插件)方法.,比如 $( "#elem" ).progressbar(); 这 个方法初始化id=elem的元素,因为我们调用progressb

基于jQuery UI - Accordion 手风琴组件

这里的例子使用 jQuery UI 1.8.6 示例效果可以看 jQuery 网站中的例子. 手风琴效果将多个内容组织到多个逻辑组中,通过选择组的标题可以展开或者收缩组中的内容,使用效果很像 Tab,作为备选,还可以通过将鼠标放置到标题上来展开或者收缩. 使用这个组件需要引用 jQuery 脚本库,core, widget, accordion 脚本库. <script src="scripts/jquery-1.6.2.js"></script><scr

如何使用jQuery UI主题

主题并不是一个新概念.当您使用级联样式表 (CSS) 样式与类设计网站的外观时,很可能已经使用了一些 主题.使用框架标准化设计方法,可以减少工作量和需要编写的代码量. jQuery UI 现在已经成为主 题实现的行业标准.虽然还存在其他的选择,比如 Dojo(与 Dijit 耦合在一起)或 Ext JS,但 jQuery UI 将主题与小部件的使用结合在一起,小部件是用户与日期选择器或按钮进行交互时需要使用的元素.构成 jQuery UI 主题的文件的内部工作原理就是 CSS 与 JavaScr

jQuery入门(21) jQuery UI示例

上篇介绍了使用jQuery UI基本工作过程,后面就逐个介绍jQuery UI库内置的UI组件,支持的拖放 ,动画效果等,如果你之前看过Yii Framework教程 ,PHP Yii Framework封装了jQuery UI组件,有兴 趣的可以看一看. 本教程面的示例基本翻译自jQuery UI 英 文网站,部分例子可能有些修改,测试环境依然是Visual Studio IDE (2012). jQuery UI  也支持多种显示主题.

jQuery入门(19) jQuery UI概述

前面介绍了jQuery的基本用法,jQuery UI 是一套 JavaScript 函式库,提供抽象化.可自订主题 的 GUI 控制项与动画效果.基于 jQuery JavaScript 函式库,可用来建构互动式的Web应用. 它的基本功能有: 互动 拖曳(Draggable) – 让元素可以用滑鼠拖曳. 拖放 (Droppable) – 让控制项可以接受其他拖曳进来的元素. 调整大小(Resizable) – 让元素可 以调整大小. 选取(Selectable) – 提供进阶的大量元素选择功能

jquery.ui.draggable中文文档(原文翻译)_jquery

[原文翻译]JQuery UI Draggable插件用来使选中的元素可以通过鼠标拖动.Draggable的元素受影响css: ui-draggable, 拖动过程中的css: ui-draggable-dragging.如果需要的不仅仅是拖, 而是一个完整的拖放功能, 请参阅JQuery UI 的Droppable插件, 该插件提供了一个draggable放的目标.所有的回调函数(start, stop, drag等事件)接受两个参数: event: 浏览器原生的事件ui: 一个JQuery的

jQuery UI Datepicker使用介绍

本博客使用Markdown编辑器编写 在企业级web开发过程中,日历控件和图表控件是使用最多的2中第三方组件.jQuery UI带的Datepicker,日历控件能满足大多数场景开发需要.本文就主要讨论jQuery UI Datepicker的使用,和中文本地化配置. 1.jQuery UI介绍 jQuery UI是一套基于jQuery控件和动画效果Javascript类库.可以用来构建交互式的互联网应用程序.最新版本1.10.4.基于jQuery 1.6+jQuery UI官方网站 2.jQu

使用jQuery UI和jQuery插件构建更好的Web应用程序

本文同时也介绍了一些 jQuery 插件,可以加速 Web 开发并有助于创建我们所熟悉的,且流畅.直观.灵活的界面. 如果您是一个传统桌面应用程序开发人员,并且正在转向开发 Web 应用程序,在学习 HTML 和 CSS 方面您可能不会遇到什么困难,但为应用程序设计一个漂亮的外观可能会是一个挑战.jQuery UI 和各种 jQuery 插件对于快速将 Web 应用程序组合在一起有极大的帮助,只需在 GUI 设计上花费少量的时间. JavaScript 和 jQuery 如果您希望页面有任何形式