前言

使用$.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类IDiconAlign: "left"//按钮图标位置。可用值有:'left','right'
    };
})(jQuery);

View Code

示例代码

<!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>

View Code

插件效果

转载于:https://www.cnblogs.com/DemoLee/p/3500775.html

easyui源码翻译1.32--LinkButton(按钮)相关推荐

  1. easyui源码翻译1.32--Messager(消息窗口)

    前言 使用$.messager.defaults重写默认值对象.下载该插件翻译源码 消息窗口提供了不同的消息框风格,包含alert(警告框), confirm(确认框), prompt(提示框), p ...

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

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

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

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

  4. easyui源码翻译1.32--Window(窗口)

    前言 扩展自$.fn.panel.defaults.使用$.fn.window.defaults重写默认值对象.下载该插件翻译源码 窗口控件是一个浮动和可拖拽的面板可以用作应用程序窗口.默认情况下,窗 ...

  5. easyui源码翻译1.32--ValidateBox(验证框)

    前言 使用$.fn.validatebox.defaults重写默认值对象.下载该插件翻译源码 validatebox(验证框)的设计目的是为了验证输入的表单字段是否有效.如果用户输入了无效的值,它将 ...

  6. easyui源码翻译1.32--Resizable(调整大小)

    前言 使用$.fn.resizable.defaults重写默认值对象 下载该插件翻译源码 源码 /*** jQuery EasyUI 1.3.2* *翻译:qq 1364386878 Resizab ...

  7. ArrayList源码翻译

    ArrayList源码翻译 简介 属性解读 初始化 添加方法 get方法 set方法 remove方法 contains方法 clone方法 总结 简介 ArrayList 是 java 集合框架中比 ...

  8. three.js源码翻译及案例(五)-GLTFLoader.js

    写在前面 Three中的加载脚本很多,但是核心思想是差不多的,就是文件用文件解析器加载,图片用图片解析器加载,然后json转换为对象,但是由于gltf格式可以自己编辑所以有的源码参考意义不大,glb及 ...

  9. jQuery Easyui 源码分析之combo组件

    /** * jQuery EasyUI 1.3.1 * 该源码完全由压缩码翻译而来,并非网络上放出的源码,请勿索要.*/ (function($) {function setSize(target, ...

  10. Vue源码翻译之渲染逻辑链

    本篇文章主要要记录说明的是,Vue在Vdom的创建上的相关细节.这也是描绘了Vue在界面的创建上的一个逻辑顺序,同时我也非常拜服作者编码的逻辑性,当然或许这么庞大复杂的编码不是一次性铸就的,我想应该也 ...

最新文章

  1. synchronized能不能保证有序性??
  2. ARM Cortex Debug Port Access Port DP AP JTAG-DP SW-DP SWJ-DP JTAG-AP MEM-AP
  3. python每日一学_Python每日一练0011
  4. linux tcp 服务器 c,Linux网络编程篇之Tcp协议介绍, C/S通信及聊天室实现
  5. python a除以b_A除以B (Python)
  6. jsoneditor光标错位的原因及解决方式
  7. n元一次不定方程 模板
  8. 【生活日记】  路在脚下,更在心中,心随路转,心路常宽
  9. 有哪些 Java 源代码看了后让你收获很多,代码思维和能力有较大的提升?
  10. java 二进制加减_二进制加法Java实现
  11. 【一起入门NLP】中科院自然语言处理作业五:BiLSTM+Attention实现SemEval-2010 Task 8上的关系抽取(Pytorch)【代码+报告】
  12. 不错的大数据课程体系(感谢某机构,希望不属于侵权)
  13. 做工程设计类计算机配置,专业设计制图需要什么样的电脑?制图电脑配置要求 (全文)...
  14. 【计算机网络】大作业-实现两台pc间交流的简单的聊天软件
  15. OpenGL基础绘制
  16. 计算机的ram是一种什么东西,科技:什么是RAM?
  17. 7-10 计算工资 (15 分)
  18. 最新谷歌外链资源,谷歌如何发高质量的外链?
  19. 【Unity2D入门教程】简单制作战机弹幕射击游戏⑥最终回扩展其它范围的内容
  20. 如何基于Debian10部署UBNT Unifi控制器---问答答疑补充?

热门文章

  1. 04 . Filebeat简介原理及配置文件和一些案例
  2. python getopt使用_如何使用getopt.getoptpython中的方法?
  3. php 安装pdo odbc,php如何安装pdo odbc扩展
  4. 剖析HotSpot的初始化过程
  5. [渝粤教育] 江苏食品药品职业技术学院 食品生物化学 参考 资料
  6. 【渝粤教育】国家开放大学2018年春季 0179-21T数据库基础与应用 参考试题
  7. 【渝粤题库】 陕西师范大学 210006幼儿园课程作业(高起专)
  8. 【RLchina第二讲】 Foundations of Reinforcement Learning
  9. 32位的tetview and medit 在64bit的linux运行,有很多32bit的库没有安装,错误不断之解决办法。
  10. 拼装html字符串的最快方法