前言

使用$.fn.linkbutton.defaults重写默认值对象。下载该插件翻译源码

按钮组件使用超链接按钮创建。它使用一个普通的<a>标签进行展示。它可以同时显示一个图标和文本,或只有图标或文字。按钮的宽度可以动态和折叠/展开以适应它的文本标签。

源码

/**
* jQuery EasyUI 1.3.2
*
* 翻译:lbq
*
*g=this p=g.options
*/
(function ($) {
//初始化函数
function _init(target) {
var p = $.data(target, "linkbutton").options;
$(target).empty();
$(target).addClass("l-btn");
if (p.id) {
$(target).attr("id", p.id);
} else {
$(target).attr("id", "");
}
if (p.plain) {
$(target).addClass("l-btn-plain");
} else {
$(target).removeClass("l-btn-plain");
}
if (p.text) {
$(target).html(p.text).wrapInner("<span class=\"l-btn-left\">"
+ "<span class=\"l-btn-text\">"
+ "</span>" + "</span>");
if (p.iconCls) {
$(target).find(".l-btn-text").addClass(p.iconCls).addClass(p.iconAlign == "left" ? "l-btn-icon-left" : "l-btn-icon-right");
}
} else {
$(target).html("&nbsp;").wrapInner("<span class=\"l-btn-left\">"
+ "<span class=\"l-btn-text\">"
+ "<span class=\"l-btn-empty\"></span>"
+ "</span>" + "</span>");
if (p.iconCls) {
$(target).find(".l-btn-empty").addClass(p.iconCls);
}
}
$(target).unbind(".linkbutton").bind("focus.linkbutton", function () {
if (!p.disabled) {
$(this).find("span.l-btn-text").addClass("l-btn-focus");
}
}).bind("blur.linkbutton", function () {
$(this).find("span.l-btn-text").removeClass("l-btn-focus");
});
setDisabled(target, p.disabled);
};
//设置禁用
function setDisabled(target, disabled) {
var g = $.data(target, "linkbutton");
if (disabled) {
g.options.disabled = true;
var href = $(target).attr("href");
if (href) {
g.href = href;
$(target).attr("href", "javascript:void(0)");
}
if (target.onclick) {
g.onclick = target.onclick;
target.onclick = null;
}
$(target).addClass("l-btn-disabled");
} else {
g.options.disabled = false;
if (g.href) {
$(target).attr("href", g.href);
}
if (g.onclick) {
target.onclick = g.onclick;
}
$(target).removeClass("l-btn-disabled");
}
};
//实例化按钮
$.fn.linkbutton = function (options, parm) {
if (typeof options == "string") {
return $.fn.linkbutton.methods[options](this, parm);
}
options = options || {};
return this.each(function () {
var g = $.data(this, "linkbutton");
if (g) {
$.extend(g.options, options);
} else {
$.data(this, "linkbutton", {
options: $.extend({},
$.fn.linkbutton.defaults,
$.fn.linkbutton.parseOptions(this), options)
});
$(this).removeAttr("disabled");
}
_init(this);
});
};
//方法定义(3)
$.fn.linkbutton.methods = {
//返回属性对象
options: function (jq) {
return $.data(jq[0], "linkbutton").options;
},
//启用按钮
enable: function (jq) {
return jq.each(function () {
setDisabled(this, false);
});
},
//禁用按钮
disable: function (jq) {
return jq.each(function () {
setDisabled(this, true);
});
}
};
//解析器配置
$.fn.linkbutton.parseOptions = function (target) {
var t = $(target);
return $.extend({},
$.parser.parseOptions(target,
["id", "iconCls", "iconAlign", { plain: "boolean" }]),
{
disabled: (t.attr("disabled") ? true : undefined),
text: $.trim(t.html()),
iconCls: (t.attr("icon") || t.attr("iconCls"))
});
};
//默认值对象(6)
$.fn.linkbutton.defaults = {
id: null,//组件的ID属性
disabled: false,//为true时禁用按钮
plain: false,//为true时显示简洁效果
text: "",//按钮文字
iconCls: null,//显示在按钮文字左侧的图标(16x16)的CSS类ID
iconAlign: "left"//按钮图标位置。可用值有:'left','right'
};
})(jQuery);

示例代码

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Basic LinkButton - jQuery EasyUI Demo</title>
<link rel="stylesheet" type="text/css" href="../../themes/default/easyui.css">
<link rel="stylesheet" type="text/css" href="../../themes/icon.css">
<link rel="stylesheet" type="text/css" href="../demo.css">
<script type="text/javascript" src="../../jquery-1.8.0.min.js"></script>
<script src="../../plugins2/jquery.parser.js"></script>
<script src="../../plugins2/jquery.linkbutton.js"></script>
</head>
<body>
<h2>Basic LinkButton</h2>
<div class="demo-info">
<div class="demo-tip icon-tip"></div>
<div>Buttons can be created from &lt;a/&gt; link.</div>
</div>
<div style="margin:10px 0;"></div>
<div style="padding:5px;">
<a href="#" class="easyui-linkbutton" data-options="iconCls:'icon-add'">Add</a>
<a href="#" class="easyui-linkbutton" data-options="iconCls:'icon-remove'">Remove</a>
<a href="#" class="easyui-linkbutton" data-options="iconCls:'icon-save'">Save</a>
<a href="#" class="easyui-linkbutton" data-options="iconCls:'icon-cut',disabled:true">Cut</a>
<a href="#" class="easyui-linkbutton">Text Button</a>
</div> </body>
</html>

插件效果

easyui源码翻译1.32--LinkButton(按钮)的更多相关文章

  1. easyui源码翻译1.32+API翻译全篇导航 (提供下载源码)

    前言 EasyUI每个组件都会有 属性.方法.事件 属性 所有的属性都定义在jQuery.fn.{plugin}.defaults里面.例如,对话框属性定义在jQuery.fn.dialog.defa ...

  2. easyui源码翻译1.32--datagrid(数据表格)

    前言 此前网上有easyui1.25的源码  应该算是比较老的版本  之后又经历了1.26 . 1.3. 1.31. 1.32 .1.33.1.34  1.33开始支持css3 算是又一个转折  但是 ...

  3. easyui源码翻译1.32--MenuButton(菜单按钮)

    前言 扩展自$.fn.linkbutton.defaults.使用$.fn.menubutton.defaults重写默认值对象..下载该插件翻译源码 菜单按钮是下拉菜单的一部分.它伴随着linkbu ...

  4. easyui源码翻译1.32--SplitButton(分割按钮)

    前言 扩展自$.fn.linkbutton.defaults.用于$.fn.splitbutton.defaults重写默认值对象.下载该插件翻译源码 类似菜单按钮,分割按钮也与linkbutton和 ...

  5. easyui源码翻译1.32--Pagination(分页)

    前言 使用$.fn.pagination.defaults重写默认值对象下载该插件翻译源码 该分页控件允许用户导航页面的数据.它支持页面导航和页面长度选择的选项设置.用户可以在分页控件上添加自定义按钮 ...

  6. easyui源码翻译1.32--SearchBox(搜索框)

    前言 使用$.fn.searchbox.defaults重写默认值对象.下载该插件翻译源码 搜索框提示用户需要输入搜索的值.它可以结合一个菜单,允许用户选择不同的搜索类别.在用户按下回车键或点击组件右 ...

  7. easyui源码翻译1.32--panel(面板)

    前言 昨天发布了表格datagrid的翻译源码 ,easyui的许多插件有依赖关系  比如datagrid 的渲染需要panel.resizable.linkbutton.pagination   今 ...

  8. easyui源码翻译1.32--Tabs(选项卡)

    前言 使用$.fn.tabs.defaults重写默认值对象.下载该插件翻译源码 选项卡显示一批面板.但在同一个时间只会显示一个面板.每个选项卡面板都有头标题和一些小的按钮工具菜单,包括关闭按钮和其他 ...

  9. easyui源码翻译1.32--Dialog(对话框窗口)

    前言 扩展自$.fn.window.defaults.使用$.fn.dialog.defaults重写默认值对象.下载该插件翻译源码 该对话框是一种特殊类型的窗口,它在顶部有一个工具栏,在底部有一个按 ...

随机推荐

  1. SQLSERVER2012用户登录error40

    昨天晚上公司停电了,电脑非正常关闭,今早回来之后,用sa登录sqlserver,一直报error40这个错,以前没碰到过,所以很紧张,问东问西,在网上也搜了好多,也跟着配置了好多,都不行,快被逼疯的时 ...

  2. Scala语言初识

    scala是一种集面向对象特性和函数式特性于一身并可运行在JVM上的强类型静态语言.因为可以运行在JVM上,并在设计时借鉴于大量的java语言特性,故可以和java互动并可以调用java相关类库,这让 ...

  3. jquery的effect-color对easyui没效果.自己冒险写个边框的颜色闪烁.

    "jquery-ui-effect-color.js" 是从jqueryui下载的color动画部分(自己改了个名字). 链接 <!DOCTYPE html> < ...

  4. LA 2965 Jurassic Remains (中途相遇法)

    Jurassic Remains Paleontologists in Siberia have recently found a number of fragments of Jurassic pe ...

  5. How to hide an entry in the Add/Remove Programs applet?

    Original link: http://www.winhelponline.com/articles/15/1/How-to-hide-an-entry-in-the-AddRemove-Prog ...

  6. [Guava官方文档翻译] 1.Guava简介 (Introduction)

    用户指南 Guava包含Google在Java项目中用到的一些核心库:collections, caching, primitives support, concurrency 库, common a ...

  7. 使用XmlPullParser对xml进行读取

    XML文件是一种标记性语言;在开发中经常在接口交互时被用作报文传输或者把自定义的类序列化为XML的形式存储到数据库.正因为XML文件这么常用,使用JAVA对XML文件进行读写操作是每一个开发人员必须掌 ...

  8. iis7.5 aspx,ashx的mime类型

    映射aspx: 打开IIS管理器,找到“处理程序映射”,在列表右击选择“添加脚本映射”即可.eg:*.aspx,将该类型的页面的处理程序映射为“%windir%\Microsoft.NET\Frame ...

  9. Newtonsoft.Json.dll解析json的dll文件使用

    要解析的json //解析前 //解析前 {,,,,,,,,,,},,,,,,,,,,,},,,,,,,,,,,,,,,,},,,,,,,,,},,,,,,,,,,,,},,,,,,,,,,,},,, ...

  10. Super Hide IP 3.4.7.8允许您以匿名方式进行网上冲浪、 保持隐藏您的 IP 地址

    Super Hide IP 3.4.7.8 转自:http://www.0daydown.com/04/695.html Super Hide IP允许您以匿名方式进行网上冲浪. 保持隐藏您的 IP ...