不定义JQuery插件 不要说会JQuery
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了不定义JQuery插件 不要说会JQuery相关的知识,希望对你有一定的参考价值。
二、普及JQuery知识
知识1:用JQuery写插件时,最核心的方法有如下两个:
$.extend(object) 可以理解为JQuery 添加一个静态方法。
$.fn.extend(object) 可以理解为JQuery实例添加一个方法。
基本的定义与调用:
/* $.extend 定义与调用
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
$.extend({ fun1:
function
() { alert(
"执行方法一"
); } });
$.fun1();
/* $.fn.extend 定义与调用
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
$.fn.extend({ fun2:
function
() { alert(
"执行方法2"
); } });
$(
this
).fun2();
//等同于
$.fn.fun3 =
function
() { alert(
"执行方法三"
); }
$(
this
).fun3();
知识2:jQuery(function () { }); 与 (function ($) { })(jQuery);的区别:
jQuery(
function
() { });
//相当于
$(document).ready(
function
() { });
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
(
function
($) { })(jQuery);
//相当于
var
fn =
function
($) { };
fn(jQuery);
jQuery(function () { });是某个DOM元素加载完毕后执行方法里的代码。
(function ($) { })(jQuery); 定义了一个匿名函数,其中jQuery代表这个匿名函数的实参。通常用在JQuery插件开发中,起到了定义插件的私有域的作用。
三、开发JQuery插件标准结构
1、定义作用域:定义一个JQuery插件,首先要把这个插件的代码放在一个不受外界干扰的地方。如果用专业些的话来说就是要为这个插件定义私有作用域。外部的代码不能直接访问插件内部的代码。插件内部的代码不污染全局变量。在一定的作用上解耦了插件与运行环境的依赖。说了这么多,那要怎样定义一个插件的私有作用域?
以上是关于不定义JQuery插件 不要说会JQuery的主要内容,如果未能解决你的问题,请参考以下文章