服务器之家:专注于服务器技术及软件下载分享
分类导航

node.js|vue.js|jquery|angularjs|React|json|js教程|

服务器之家 - 编程语言 - JavaScript - 使用JQuery库提供的扩展功能实现自定义方法

使用JQuery库提供的扩展功能实现自定义方法

2021-03-11 16:46JQuery教程网 JavaScript

如何没有任何一个库可以满足所有的需求,可以使用JQuery库提供的扩展功能,下面有个示例,大家可以看看

JQuery包装器提供了大量的方法,可以再页面中直接使用。但是,没有任何一个库可以满足所有的需求,所以,JQuery库提供了丰富的扩展功能。以禁用一组表单元素为例,看看怎么简单有效的在JQuery库中添加自定义的功能扩展。(JQuery没有禁用表单元素的方法哦)

上代码:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
<!DOCTYPE>
 
<html lang="en">
 
<head>
 
<title>Custom Method!</title>
 
<meta http-equiv="content-type" content="text/html;charset=utf-8">
 
<script type="text/javascript" src="js/jquery-2.1.1.js"></script>
 
<script type="text/javascript">
 
jQuery(function()
 
{
 
$("form input").disable();
 
});
 
</script>
 
</head>
 
<body>
 
<p>测试自定义方法禁用表单元素</p>
 
<form>
 
<input type="text" value="test"><br/>
 
<input type="button" value="confirm" class="test">
 
</form>
 
</body>
 
</html>

文本框和按钮已经被禁用:
使用JQuery库提供的扩展功能实现自定义方法

若只禁用按钮,添加一个css类即可;

?
1
2
3
4
jQuery(function()
{
$("form input.test").disable();
});

看看是不是禁用了按钮:

使用JQuery库提供的扩展功能实现自定义方法

实现也很简单,打开jquery-2.1.1.js源码,没有压缩的,比较容易,我引入

的是jquery-2.1.1.js,然后添加下列代码

?
1
2
3
4
5
6
7
8
9
10
11
jQuery.fn.disable=function () {
 
return this.each(function()
 
{
 
if(this.disabled != null) this.disabled=true;
 
});
 
}

在按照上述案例的方式调用即可。

在《JQuery In Action》一书中,提到以$.fn.方法名方式扩展(P12),我测试过,没有实现禁用。错误之处,还望指正。

延伸 · 阅读

精彩推荐