按钮(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. PS作业

  2. leetcode 笔记5 single number

    question: Given an array of integers, every element appears twice except for one. Find that single o ...

  3. 07-Mysql数据库----数据类型

    介绍 存储引擎决定了表的类型,而表内存放的数据也要有不同的类型,每种数据类型都有自己的宽度,但宽度是可选的 详细参考链接:http://www.runoob.com/mysql/mysql-data- ...

  4. AGV小车典型设计算法及应用

    1. AGV小车的发展背景 在现代化工业的发展中,提倡高效,快速,可靠,提倡将人从简单的工作中解放出来.机器人逐渐替代了人出现在各个工作岗位上.机器人具有可编程.可协调作业和基于传感器控制等特点,自动 ...

  5. anaconda常用的命令

    常用操作命令: 一.环境操作 1.查看环境管理的全部命令帮助: conda env -h 2.查看当前系统下的环境: conda info -e 3.创建环境: conda create env_na ...

  6. Long Short-Term Memory (LSTM)

                         Long Short-Term Memory (LSTM) Outline Background LSTM Network Extended LSTM LST ...

  7. Python攻击

    python   DOS攻击 2版本 #!/usr/bin/env python import socket import time import threading #Pressure Test,d ...

  8. C++-STL:vector用法总结

    目录 简介 用法 1. 头文件 2. vector的声明及初始化 3. vector基本操作 简介 vector,是同一类型的对象的集合,这一集合可看作可变大小的数组,是顺序容器的一种.相比于数组,应 ...

  9. No node available for block: blk

    刚才利用hadoop和mahout运行kmean是算法,一开始利用了10个节点,一个master,9个slave,运行了7分钟,我为了看速度的变化,就改用伪分布的形式,但是一开始运行就报错了: 17/ ...

  10. C++中getline()函数简介

    有时我们希望能在最终得到的字符中保留输入时的空白符,这时应该用getline()函数代替原来的>>运算符. 下面是使用getline读取一整行的示例代码: #include<iost ...