Heim  >  Artikel  >  Web-Frontend  >  JQuery插件开发示例代码_jquery

JQuery插件开发示例代码_jquery

WBOY
WBOYOriginal
2016-05-16 17:17:121017Durchsuche

JQuery 插件开发:
类级别开发,开发新的全局函数
对象级别开发,给Jquery对象开发新方法
一、类级别开发 -定义全局方法

复制代码 代码如下:

jQuery.foo = function() { 
    alert('This is a test.'); 
};

采用命名空间,可以避免命名空间内函数的冲突。
复制代码 代码如下:

jQuery.apollo={ 
    fun1:function(){ 
        console.log('fun1'); 
    }, 
    fun2:function(){ 
        console.log('fun2'); 
    } 



二、对象级别开发 -定义jQuery对象方法 

复制代码 代码如下:

(function($) {    
$.fn.pluginName = function() {  

};  
})(jQuery); 
//插件通过这样被调用: 
$('#myDiv').pluginName(); 

接受options参数以控制插件的行为
复制代码 代码如下:

(function($){ 
    $.fn.fun2=function(option){ 
        var defaultOption={ 
            param1:'param1', 
            param2:'param2' 
        } 
        $.extend(defaultOption,option); 
        console.log(defaultOption); 
    } 
})(jQuery); 
$(function(){ 
    //通过这样调用 
    $("body").fun2({ 
        param1:'new Param1' 
    }); 
}); 

保持私有函数的私有性
复制代码 代码如下:

 (function($) {   
  // plugin definition   
  $.fn.hilight = function(options) {   
    debug(this);   
    // ...   
  };   
  // private function for debugging 
  //“debug”方法不能从外部闭包进入,因此对于我们的实现是私有的。 
  function debug($obj) {   
    if (window.console && window.console.log)   
      window.console.log('hilight selection count: ' + $obj.size());   
  };   
//  ...   
})(jQuery); 
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn