按钮(button),可以给生硬的原生按钮或者文本提供更多丰富多彩的外观。它不单单可以设置按钮或文本,还可以设置单选按钮和多选按钮。

使用button按钮

使用button按钮UI的时候,不一定必须是input按钮形式,普通的文本也可以设置成button按钮。

$('#search_button').button();

修改button样式

在弹出的button对话框中,在火狐浏览器中打开Firebug或者右击->查看元素。这样,我们可以看看button的样式,根据样式进行修改。我们为了和网站主题符合,对dialog的标题背景进行修改。

无须修改ui里的CSS,直接用style.css替代掉:

/* 按钮正常状态的背景 */
.ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default {
background:url(img/ui_header_bg.png);
}
/* 按钮点击状态的背景 */
.ui-state-active, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active {
background:url(img/ui_white.png);
}

button()方法的属性

按钮方法有两种形式:

1.button(options),options是以对象键值对的形式传参,每个键值对表示一个选项

2.button('action', param),action是操作对话框方法的字符串,param则是options的某个选项。

Button按钮选项

属性 默认值/类型 说明
disabled false/布尔值 默认为false,设置为true时,按钮是非激活的
label 无/字符串 对应按钮上的文字。如果没有,HTML内容将被作为按钮的文字
icons 无/字符串 对应按钮上的图标。 在按钮文字前面和后面都可以放置一个图标,通过对象键值对的方式完成:
{
  primary : 'ui-icon-search',
  secondary : 'ui-icon-search'
}
text true/布尔值 当时设置为false时,不会显示文字,但必须指定一个图标

index.html:

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>知问前端</title>
<script type="text/javascript" src="jquery-1.12.3.js"></script>
<script type="text/javascript" src="jquery-ui.js"></script>
<script type="text/javascript" src="index.js"></script>
<link rel="shortcut icon" type="image/x-icon" href="img/favicon.ico" />
<link rel="stylesheet" type="text/css" href="jquery-ui.css" />
<link rel="stylesheet" type="text/css" href="style.css" />
</head>
<body>
<div id="header">
<div class="header_main">
<h1>知问</h1>
<div class="header_search">
<input type="text" name="search" class="search" />
</div>
<div class="header_button">
<input type="button" value="查询" id="search_button" />
</div>
<div class="header_member">
<a href="###" id="reg_a">注册</a> | <a href="###" id="login_a">登录</a>
</div>
</div>
</div> </body>
</html>

jQuery代码:

$("#search_button").button({
disabled:true, //disabled设为true,按钮是非激活状态的
label:"搜索", //对应按钮上的文字
});

如果要使用icons属性,那么index.html中按钮必须修改为:

<button id="search_button">查询</button>

jQuery代码:

$("#search_button").button({
icons:{
  primary:"ui-icon-search",
  //secondary:"ui-icon-triangle-1-s"
},
text:false
});

注意:button的事件方法,只有一个:create,当创建button时调用。

button('action',param)

button('action',param)方法能设置和获取按钮,action表示指定操作的方式。

button('action',param)方法

方法 返回值 说明
button('disabled') jQuery对象 禁用按钮
button('enable') jQuery对象 启用按钮
button('destroy') jQuery对象 删除按钮,直接阻断了button
button('refresh') jQuery对象 更新按钮布局
button('widget') jQuery对象 获取对话框的jQuery对象
button('options',param) 一般值 获取options属性的值
button('options',param,value) jQuery对象 设置options属性的值

禁用按钮:

$("#search_button").button("disable");

启用按钮:

$("#search_button").button("enable");

删除按钮:

$("#search_button").button("destroy"); //变成普通按钮

更新按钮,刷新按钮:

$("#search_button").button("refresh"); //感觉没什么鸟用

得到button的jQuery对象(与dialog类似):

alert($("#search_button").button("widget"));

得到button的options值:

alert($("#search_button").button("option","label"));//查询 

设置button的options值:

$("#search_button").button("option","label","搜索");

注意:对于UI上自带的按钮,比如dialog上的,我们可以通过Firebug查找得到jQuery对象。

index.html:

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>知问前端</title>
<script type="text/javascript" src="jquery-1.12.3.js"></script>
<script type="text/javascript" src="jquery-ui.js"></script>
<script type="text/javascript" src="index.js"></script>
<link rel="shortcut icon" type="image/x-icon" href="img/favicon.ico" />
<link rel="stylesheet" type="text/css" href="jquery-ui.css" />
<link rel="stylesheet" type="text/css" href="style.css" />
</head>
<body>
<div id="header">
<div class="header_main">
<h1>知问</h1>
<div class="header_search">
<input type="text" name="search" class="search" />
</div>
<div class="header_button">
<button id="search_button">查询</button>
</div>
<div class="header_member">
<a href="###" id="reg_a">注册</a> | <a href="###" id="login_a">登录</a>
</div>
</div>
</div> <div id="reg" title="会员注册"> </div> </body>
</html>

jQuery代码:

$("#search_button").button({
icons:{
primary:"ui-icon-search",
  //secondary:"ui-icon-triangle-1-s"
}
});
$("#reg").dialog({
buttons:{
'提交':function() { }
}
});

如何禁用对话框中的“提交按钮”?

alert($("#reg").parent().find("button").length); //
alert($("#reg").parent().find("button").eq(1).html()); //<span class="ui-button-text">提交</span>
$("#reg").parent().find("button").eq(1).button("disable");

或者

$("#reg").dialog("widget").find("button").eq(1).button("disable");

单选框、复选框

button按钮不但可以设置普通的按钮,对于单选框、复选框同样有效。

1、html单选框

index.html:

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>知问前端</title>
<script type="text/javascript" src="jquery-1.12.3.js"></script>
<script type="text/javascript" src="jquery-ui.js"></script>
<script type="text/javascript" src="index.js"></script>
<link rel="shortcut icon" type="image/x-icon" href="img/favicon.ico" />
<link rel="stylesheet" type="text/css" href="jquery-ui.css" />
<link rel="stylesheet" type="text/css" href="style.css" />
</head>
<body>
<div id="header">
<div class="header_main">
<h1>知问</h1>
<div class="header_search">
<input type="text" name="search" class="search" />
</div>
<div class="header_button">
<!-- <input type="button" value="查询" id="search_button" /> -->
<button id="search_button">查询</button>
</div>
<div class="header_member">
<a href="###" id="reg_a">注册</a> | <a href="###" id="login_a">登录</a>
</div>
</div>
</div> <div id="reg" title="会员注册">
<input type="radio" name="sex" value="male" id="male"><label for="male">男</label></input>
<input type="radio" name="sex" value="female" id="female"><label for="female">女</label></input>
</div> </body>
</html>

jQuery代码:

$("#reg input[type=radio]").button(); //按钮之间还是有空隙的

$("#reg").buttonset(); //无空隙

2、html复选框

index.html:

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>知问前端</title>
<script type="text/javascript" src="jquery-1.12.3.js"></script>
<script type="text/javascript" src="jquery-ui.js"></script>
<script type="text/javascript" src="index.js"></script>
<link rel="shortcut icon" type="image/x-icon" href="img/favicon.ico" />
<link rel="stylesheet" type="text/css" href="jquery-ui.css" />
<link rel="stylesheet" type="text/css" href="style.css" />
</head>
<body>
<div id="header">
<div class="header_main">
<h1>知问</h1>
<div class="header_search">
<input type="text" name="search" class="search" />
</div>
<div class="header_button">
<!-- <input type="button" value="查询" id="search_button" /> -->
<button id="search_button">查询</button>
</div>
<div class="header_member">
<a href="###" id="reg_a">注册</a> | <a href="###" id="login_a">登录</a>
</div>
</div>
</div> <div id="reg" title="会员注册">
<input type="checkbox" name="color" value="red" id="red"><label for="red">红</label></input>
<input type="checkbox" name="color" value="yellow" id="yellow"><label for="yellow">黄</label></input>
<input type="checkbox" name="color" value="green" id="green"><label for="green">绿</label></input>
<input type="checkbox" name="color" value="orange" id="orange"><label for="orange">橙</label></input>
</div> </body>
</html>

jQuery代码:

$("#reg input[type=checkbox]").button(); //按钮之间还是有空隙的

$("#reg").buttonset(); //无空隙

知问前端——按钮UI的更多相关文章

  1. 第一百七十九节,jQuery-UI,知问前端--按钮 UI-图标

    jQuery-UI,知问前端--按钮 UI 学习要点: 1.使用 button 按钮 2.修改 button 样式 3.button()方法的属性 4.button('action', param) ...

  2. 第一百八十二节,jQuery-UI,知问前端--日历 UI

    jQuery-UI,知问前端--日历 UI 学习要点: 1.调用 datepicker()方法 2.修改 datepicker()样式 3.datepicker()方法的属性 4.datepicker ...

  3. 第一百七十八节,jQuery-UI,知问前端--对话框 UI

    jQuery-UI,知问前端--对话框 UI 学习要点: 1.开启多个 dialog 2.修改 dialog 样式 3.dialog()方法的属性 4.dialog()方法的事件 5.dialog 中 ...

  4. 知问前端——对话框UI(一)

    对话框(dialog),是jQuery UI非常重要的一个功能.它彻底的代替了JavaScript的alert().prompt()等方法,也避免了新窗口或页面的繁杂冗余. 开启多个dialog 我们 ...

  5. 知问前端——日历UI(三)

    datepicker日期选择选项 属性 默认值/类型 说明 minDate 无/对象.字符串或数值 日历中可以选择的最小日期 maxDate 无/对象.字符串或数值 日历中可以选择的最大日期 defa ...

  6. 知问前端——日历UI(二)

    datapicker外观选项 属性 默认值/类型 说明 disabled false/布尔值 禁用日历 numberOfMonths 1/数值 日历中同时显示的月份个数.默认为1,如果设置3就同时显示 ...

  7. 知问前端——日历UI(一)

    日历(datepicker)UI,可以让用户更加直观的.更加方便的输入日期,并且还考虑不同国家的语言限制,包括汉语. 调用datepicker()方法 $('#date').datepicker(); ...

  8. 知问前端——工具提示UI

    工具提示(tooltip),是一个非常实用的UI.它彻底扩展了HTML中的title属性,让提示更加丰富,更加可控制,全面提升了用户体验. 调用tooltip()方法 在调用tooltip()方法之前 ...

  9. 知问前端——对话框UI(二)

    dialog()方法的事件 除了属性设置外,dialog()方法也提供了大量的事件,这些事件可以给各种不同状态时的对话框提供回调函数,这些回调函数中的this值等于对话框内容的div对象,不是整个对话 ...

随机推荐

  1. 高德API+.NET解决租房问题(可能是最可靠房源:上海互助租房)

    作者:李国宝链接:https://zhuanlan.zhihu.com/p/22113421来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处. PS:最近点赞和关注的小伙伴 ...

  2. kill -9 vs killall

    kill Linux中的kill命令用来终止指定的进程(terminate a process)的运行,是Linux下进程管理的常用命令.通常,终止一个前台进程可以使用Ctrl+C键,但是,对于一个后 ...

  3. .NET基础知识之七——索引器

           索引器是什么?有什么作用?索引器允许类的实例以访问数组的形式来访问对象里面的属性.如我们经常可以看到类似于dr["name"]="test",或者 ...

  4. Spring实战第六章学习笔记————渲染Web视图

    Spring实战第六章学习笔记----渲染Web视图 理解视图解析 在之前所编写的控制器方法都没有直接产生浏览器所需的HTML.这些方法只是将一些数据传入到模型中然后再将模型传递给一个用来渲染的视图. ...

  5. 21天学习caffe(一)

    ubuntu环境安装caffe1 安装依赖 apt-get install libatlas-base-dev apt-get install python-dev apt-get install l ...

  6. Go基础篇【第8篇】: 内置库模块 bytes [二]

    type Reader ¶ type Reader struct { // 内含隐藏或非导出字段 } Reader类型通过从一个[]byte读取数据,实现了io.Reader.io.Seeker.io ...

  7. HDU 3269 P2P File Sharing System(模拟)(2009 Asia Ningbo Regional Contest)

    Problem Description Peer-to-peer(P2P) computing technology has been widely used on the Internet to e ...

  8. 第5讲——cin处理字符输入

    本来这一讲应该是while.for.if之类的,但是,我们可是学过C的男人,再浪费时间搞这个??? 还不如学点C++中的新知识. cin对象支持3种不同模式的单字符输入,其用户接口各不相同. 下面我们 ...

  9. url解析字符串

    课程链接:http://www.imooc.com/video/6711/0

  10. 最短路径——Bellman-Ford算法以及SPFA算法

    说完dijkstra算法,有提到过朴素dij算法无法处理负权边的情况,这里就需要用到Bellman-Ford算法,抛弃贪心的想法,牺牲时间的基础上,换取负权有向图的处理正确. 单源最短路径 Bellm ...