zoukankan      html  css  js  c++  java
  • jQuery中实现自定义方法的扩展

        JQuery包装器提供了大量的方法,可以再页面中直接使用。但是,没有

    任何一个库可以满足所有的需求,所以,JQuery库提供了丰富的扩展功能

    。以禁用一组表单元素为例,看看怎么简单有效的在JQuery库中添加自定

    义的功能扩展。(JQuery没有禁用表单元素的方法哦)

        上代码:

       1: <!DOCTYPE>
    
       2: <html lang="en">
    
       3: <head>
    
       4:     <title>Custom Method!</title>
    
       5:     <meta http-equiv="content-type" content="text/html;charset=utf-8">
    
       6:     <script type="text/javascript" src="js/jquery-2.1.1.js"></script>
    
       7:     <script type="text/javascript">
    
       8:         jQuery(function()
    
       9:             {
    
      10:                 $("form input").disable();
    
      11:             });
    
      12:     </script>
    
      13: </head>
    
      14: <body>
    
      15:     <p>测试自定义方法禁用表单元素</p>
    
      16:     <form>
    
      17:         <input type="text" value="test"><br/>
    
      18:         <input type="button" value="confirm" class="test">
    
      19:     </form>
    
      20: </body>
    
      21: </html>

    文本框和按钮已经被禁用:

    1

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

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

    看看是不是禁用了按钮:

    2

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

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

       1: jQuery.fn.disable=function () {
    
       2:         return this.each(function()
    
       3:             {
    
       4:                 if(this.disabled != null) this.disabled=true;
    
       5:             });
    
       6:     }

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

    在《JQuery In Action》一书中,提到以$.fn.方法名方式扩展(P12),我

    测试过,没有实现禁用。错误之处,还望指正。

    更多相关文章,去看看

  • 相关阅读:
    LuaJIT 之 FFI
    rtmp时间戳问题导致的丢帧,帧率显示错误
    c# 调用 c++的 dll 中关于 char*传入传出参数
    “Microsoft”中不存在类型或命名空间名称“Office”(是否缺少程序集引用?)
    udp,select超时和recvfrom收不到数据原因
    rtmpdump应用在window中
    Win7下安装openssl
    debug模式不报错,release模式报错
    qt 断点无效
    http协议 c++ 接收
  • 原文地址:https://www.cnblogs.com/ido321/p/3938585.html
Copyright © 2011-2022 走看看