📅  最后修改于: 2023-12-03 15:02:11.926000             🧑  作者: Mango
jQuery UI Progressbar 是一个易用的进度条插件,可以方便地为网站添加进度条效果。option() 方法是 jQuery UI Progressbar 提供的一种设置或获取进度条选项的接口。本文将详细介绍 jQuery UI Progressbar option() 方法的使用方法和示例。
下面是 jQuery UI Progressbar option() 方法的语法:
$(selector).progressbar("option", optionName) // 获取指定选项的值
$(selector).progressbar("option", optionName, value) // 设置指定选项的值
$(selector).progressbar("option", options) // 设置多个选项的值
其中:
selector
表示进度条元素的选择器;optionName
表示要设置或获取的选项名;value
表示要设置的选项值;options
表示要设置的多个选项,是一个键值对的对象。下面是 option() 方法的参数说明:
参数|描述 -|- optionName|指定要设置或获取的选项名。具体可参考下面的选项列表。 value|指定要设置的选项值。 options|一个对象,表示要设置的多个选项。它是由键值对构成的对象,键表示选项名,值表示选项值。
如果使用 option() 方法获取进度条选项的值,则会返回指定选项的当前值。如果使用 option() 方法设置进度条选项的值,则会返回 jQuery 对象,可以连缀调用其他方法。
下面列出了 jQuery UI Progressbar 所支持的选项及其默认值。可以通过 option() 方法来设置或获取这些选项的值:
选项|类型|默认值|描述 -|-|-|- value|Number|0|进度条的当前值。取值范围为 0 到 100。 max|Number|100|进度条的最大值。取值范围为 0 到 100。 disabled|Boolean|false|禁用进度条,使其无法响应用户交互。 classes|Object|{}|自定义 CSS 类。可以通过它来定制进度条的外观和样式。 create|null|jQuery.noop|进度条创建时的回调函数。可以在这里进行一些初始化操作。 change|null|jQuery.noop|进度条的值发生变化时的回调函数。可以在这里响应进度条值的变化。 complete|null|jQuery.noop|进度条完成时的回调函数。可以在这里进行完成后的操作。
以下示例演示了如何使用 option() 方法来设置和获取进度条选项:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>jQuery UI Progressbar option() 方法示例</title>
<link rel="stylesheet" href="https://code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css">
<script src="https://code.jquery.com/jquery-3.5.1.min.js"></script>
<script src="https://code.jquery.com/ui/1.12.1/jquery-ui.min.js"></script>
</head>
<body>
<div id="progressbar"></div>
<button id="btn-start">开始</button>
<button id="btn-stop">停止</button>
<script>
// 创建进度条
$('#progressbar').progressbar({
value: 0,
change: function() {
console.log('进度值更新:' + $(this).progressbar('option', 'value'));
},
complete: function() {
console.log('进度条已完成');
}
});
// 绑定按钮事件
$('#btn-start').click(function() {
// 开始加载
$('#progressbar').progressbar('option', 'value', 20);
setTimeout(function() {
// 加载完成
$('#progressbar').progressbar('option', 'value', 100);
}, 5000);
});
$('#btn-stop').click(function() {
// 停止加载
$('#progressbar').progressbar('option', 'value', false);
});
</script>
</body>
</html>
该示例中,我们使用了 create、change 和 complete 三个回调函数。当进度条创建时,会执行 create 回调函数,并在控制台输出一条信息。当进度条的值发生变化时,会执行 change 回调函数,并输出进度值。当进度条完成时,会执行 complete 回调函数,并在控制台输出一条信息。
开启进度条加载时,我们使用 setTimeout 函数来模拟加载过程。在加载完成后,我们将进度条的值设置为 100,使进度条完成。我们还提供了一个停止按钮,可以在任何时候停止进度条的加载。为了方便演示,我们将加载时间设置为 5 秒钟。