linkbutton.js
jquery.linkbutton.js
/**
* linkbutton - jQuery EasyUI
*
* Licensed under the GPL:
* http://www.gnu.org/licenses/gpl.txt
*
* Copyright 2010 stworthy [ stworthy@gmail.com ]
*/
(function($){ function createButton(target) {
var opts = $.data(target, 'linkbutton').options; $(target).empty();
$(target).addClass('l-btn');
if (opts.id){
$(target).attr('id', opts.id);
} else {
$(target).removeAttr('id');
}
if (opts.plain){
$(target).addClass('l-btn-plain');
} else {
$(target).removeClass('l-btn-plain');
} if (opts.text){
$(target).html(opts.text).wrapInner(
'<span class="l-btn-left">' +
'<span class="l-btn-text">' +
'</span>' +
'</span>'
);
if (opts.iconCls){
$(target).find('.l-btn-text').addClass(opts.iconCls).css('padding-left', '20px');
}
} else {
$(target).html(' ').wrapInner(
'<span class="l-btn-left">' +
'<span class="l-btn-text">' +
'<span class="l-btn-empty"></span>' +
'</span>' +
'</span>'
);
if (opts.iconCls){
$(target).find('.l-btn-empty').addClass(opts.iconCls);
}
} setDisabled(target, opts.disabled);
} function setDisabled(target, disabled){
var state = $.data(target, 'linkbutton');
if (disabled){
state.options.disabled = true;
var href = $(target).attr('href');
if (href){
state.href = href;
$(target).attr('href', 'javascript:void(0)');
}
var onclick = $(target).attr('onclick');
if (onclick) {
state.onclick = onclick;
$(target).attr('onclick', null);
}
$(target).addClass('l-btn-disabled');
} else {
state.options.disabled = false;
if (state.href) {
$(target).attr('href', state.href);
}
if (state.onclick) {
target.onclick = state.onclick;
}
$(target).removeClass('l-btn-disabled');
}
}
/**
* 扩展jQuery对象的属性方法
*/
$.fn.linkbutton = function(options){
if (typeof options == 'string'){
switch(options){
case 'options':
return $.data(this[0], 'linkbutton').options;
case 'enable':
return this.each(function(){
setDisabled(this, false);
});
case 'disable':
return this.each(function(){
setDisabled(this, true);
});
}
} options = options || {};
return this.each(function(){
var state = $.data(this, 'linkbutton');
if (state){
$.extend(state.options, options);
} else {
var t = $(this);
$.data(this, 'linkbutton', {
options: $.extend({}, $.fn.linkbutton.defaults, {
id: t.attr('id'),
disabled: (t.attr('disabled') ? true : undefined),
plain: (t.attr('plain') ? t.attr('plain') == 'true' : undefined),
text: $.trim(t.html()),
iconCls: t.attr('icon')
}, options)
});
t.removeAttr('disabled');
} createButton(this);
});
}; $.fn.linkbutton.defaults = {
id: null,
disabled: false,
plain: false,
text: '',
iconCls: null
}; })(jQuery);
linkbutton.js的更多相关文章
- easyloader.js源代码分析
http://www.cnblogs.com/jasonoiu/p/easyloader_source_code_analysis.html Jquery easyui是一个javascript UI ...
- 3.EasyUI学习总结(三)——easyloader源码分析
easyloader模块是用来加载jquery easyui的js和css文件的,即easyloader可以在调用的时候自动加载当前页面所需的文件,不用再自己引用, 而且它可以分析模块的依赖关系,先加 ...
- easyloader源码
/** * easyloader - jQuery EasyUI * * Licensed under the GPL: * http://www.gnu.org/licenses/gpl.txt * ...
- 使用Jquery+EasyUI 进行框架项目开发案例讲解之二---用户管理源码分享
使用Jquery+EasyUI 进行框架项目开发案例讲解之二 用户管理源码分享 在上一篇文章<使用Jquery+EasyUI进行框架项目开发案例讲解之一---员工管理源码分享>我们分享 ...
- easyui源码翻译1.32--datagrid(数据表格)
前言 此前网上有easyui1.25的源码 应该算是比较老的版本 之后又经历了1.26 . 1.3. 1.31. 1.32 .1.33.1.34 1.33开始支持css3 算是又一个转折 但是 ...
- easyui源码翻译1.32--EasyLoader(简单加载)
前言 扩展自$.fn.datebox.defaults,使用$.fn.datetimebox.defaults重写默认值对象.下载该插件翻译源码 源码 /** * jQuery EasyUI 1.3. ...
- easyui源码翻译1.32--Pagination(分页)
前言 使用$.fn.pagination.defaults重写默认值对象下载该插件翻译源码 该分页控件允许用户导航页面的数据.它支持页面导航和页面长度选择的选项设置.用户可以在分页控件上添加自定义按钮 ...
- easyui源码翻译1.32--SearchBox(搜索框)
前言 使用$.fn.searchbox.defaults重写默认值对象.下载该插件翻译源码 搜索框提示用户需要输入搜索的值.它可以结合一个菜单,允许用户选择不同的搜索类别.在用户按下回车键或点击组件右 ...
- easyui源码翻译1.32--Tabs(选项卡)
前言 使用$.fn.tabs.defaults重写默认值对象.下载该插件翻译源码 选项卡显示一批面板.但在同一个时间只会显示一个面板.每个选项卡面板都有头标题和一些小的按钮工具菜单,包括关闭按钮和其他 ...
随机推荐
- JAVA并发,线程优先级
package com.xt.thinks21_2; import java.util.concurrent.ExecutorService; import java.util.concurrent. ...
- [置顶] 【cocos2d-x入门实战】微信飞机大战之二:别急,先处理好CCScene和CCLayer的关系
转载请表明地址:http://blog.csdn.net/jackystudio/article/details/11713197 在整个游戏开始之前,我们先看一下HelloWorld示例中CCSce ...
- 非线性规划问题的matlab求解
函数:[x, fval] = fmincon(FUN, X0, A, B, Aeq, Beq, LB, UB, NONLCON) 返回的x:是一个向量——在取得目标函数最小时各个xi的取值: 返回的f ...
- 本地yum源安装GCC
Linux环境下yum源安装GCC 前提条件是有Linux环境的安装盘ISO文件 在Linux系统中创建两个目录,一个是用来存放ISO文件,一个是用来挂载该ISO文件,如下: $mkdir /root ...
- WINFORM Tootip使用小结
toolTip1.Active = true; //激活工具提示,只有激活才会显示提示 toolTip1.IsBalloon = true; //toolTip以气泡形式出现 toolTip ...
- PHP解析和生成xml(DOMDocument版)
上次和大家分享了SimpleXML操作xml的一些知识,但是php中除了simplexml还有DOMDocument,这次就着重来看看DOMDocument的用法,还是把生成xml和解析xml分开写 ...
- sql语句分析
show profile是由Jeremy Cole捐献给MySQL社区版本的.默认的是关闭的,但是会话级别可以开启这个功能.开启它可以让MySQL收集在执行语句的时候所使用的资源.为了统计报表,把pr ...
- 未能加载文件或程序集“xxxx”或它的某一个依赖项
一般是解决方案中相互依赖的项目生成的目标平台不一样所致,更改为相同目标即可!
- Primavera 6.0
Primavera 6.0(原p3e/c)荟萃了P3软件20年的项目管理精髓和经验,采用最新的IT技术,在大型关系数据库Oracle和MS SQL Server上构架起企业级的.包涵现代项目管理知识体 ...
- w3c标准的selection对象介绍
简介 术语 属性 方法 document.activeElement document.designMode = 'on'; 简介 selection是对当前激活选中区(即高亮文本)进行操作. 在非I ...