zoukankan      html  css  js  c++  java
  • 为jQuery写插件

    很多场合,我们都会调用jQuery的插件去完成某个功能,比如slider。

    如下图,做一个div,通过“$( "#slider" ).slider();”的方式直接将div变成slider,比起slider($('#slider'))更贴近jQuery的链式调用写法,可读性和通用性更好些。

    那么,我们也来为jQuery写插件。便于项目中的组件化。

    方法是非常简单的,那就写一个测试的demo来作为基础的验证吧。

    定义html,假设我们要把test div修改成宽高都是200px,背景色为红色的这么一个插件功能。

    <!DOCTYPE html>
    <html>
        <head>
            <meta charset="utf-8">
        </head>
        <body>
            <div id='test'></div>
    <script type='text/javascript' src="jquery-1.11.3.min.js"></script> <script type='text/javascript'> </script> </body> </html>

    写一个名为test的插件函数,完成插件的功能。这里可以直接使用this,表示选择器选择的那个元素封装对象。

                function test(){
                    this.css('background-color','red');
                    this.css('width', '200');
                    this.css('height', '200');
                }

    完成一个自执行函数,将jQuery传进去,关键就是把插件函数挂到jQuery.fn中去。

                (function(jquery){
                    jquery.fn.test = test;
                })(jQuery);

    调用的时候,就用jQuery选择器选择test div后直接链式调用test插件函数即可。

    $('#test').test();

    如此,最简单的插件就完成了。

    代码:

    <!DOCTYPE html>
    <html>
        <head>
            <meta charset="utf-8">
        </head>
        <body>
            <div id='test'></div>
    
            <script type='text/javascript' src="jquery-1.11.3.min.js"></script>
            <script type='text/javascript'>
                function test(){
                    this.css('background-color','red');
                    this.css('width', '200');
                    this.css('height', '200');
                }
    
                (function(jquery){
                    jquery.fn.test = test;
                })(jQuery);
    
                $('#test').test();
    
            </script>
        </body>
    </html>
  • 相关阅读:
    面向对象三大特性五大原则
    如何快速的浏览项目
    网页测速
    截取字符串
    iOS-tableView点击下拉菜单
    iOS_block内存分析
    iOS_ @property参数分析
    iOS-设计模式之Block
    iOS-设计模式之代理反向传值
    iOS-设计模式之通知
  • 原文地址:https://www.cnblogs.com/kongxianghai/p/5073979.html
Copyright © 2011-2022 走看看