Heim > php教程 > PHP开发 > Hauptteil

Detaillierte Erläuterung der Entwicklungsmethoden für jQuery-Plug-Ins

高洛峰
Freigeben: 2016-12-05 16:06:10
Original
1671 Leute haben es durchsucht

jQuery-Plug-in-Entwicklung

Im Allgemeinen ist die Entwicklung von jQuery-Plug-ins in zwei Typen unterteilt: Der eine ist eine globale Funktion, die im jQuery-Namespace hängt und auch als statische Methode bezeichnet werden kann. Das andere sind jQuery-Methoden auf Objektebene, also Methoden, die unter dem jQuery-Prototyp hängen, sodass über den Selektor erhaltene jQuery-Objektinstanzen diese Methode ebenfalls gemeinsam nutzen können.

1. jQuery-Erweiterung

1. $.extend(object)

Ähnlich der .Net-Erweiterungsmethode, die zum Erweitern von jQuery verwendet wird. Dann können Sie es mit $ aufrufen.

$(function(){
$.extend({ fun1: function () { alert("为jQuery扩展一个fun1函数!"); } });
$.fun1();
})
Nach dem Login kopieren

2. $.fn.extend(object)

jQuery-Objekt erweitern.

$.fn.extend({ fun2: function () { alert("执行方法2"); } });
$("#id1").fun2();
Nach dem Login kopieren

Sie können Google verwenden, um zu sehen:

Detaillierte Erläuterung der Entwicklungsmethoden für jQuery-Plug-Ins

Die obige Schreibweise entspricht:

$.fn.fun2 = function () { alert("执行方法2"); }
$(this).fun2();
Nach dem Login kopieren

2. Private Domain

Sie ist wie folgt definiert:

(function ($) { })(jQuery);
//相当于
var fn = function (xxoo) { };
fn(jQuery);
Nach dem Login kopieren

Der folgende Code erscheint 123.

$(function(){
var fn = function (xxoo) { };
fn(alert(123));
})
Nach dem Login kopieren

3. Grundlegende Schritte zum Definieren eines Plug-Ins

1. Definieren Sie den Umfang

Entwickeln Sie ein jQuery-Plug-in: Zunächst muss der Plug-in-Code von der Außenwelt isoliert werden. Externer Code darf nicht direkt auf den Code im Plug-in zugreifen, und der Code im Plug-in hat keinen Einfluss auf den Code Außenwelt.

//Schritt 1 Definieren Sie den privaten Bereich des Plug-Ins

(function ($) {
 
})(jQuery);
Nach dem Login kopieren

Dadurch wird sichergestellt, dass der Code im Plug-In vorhanden ist isoliert von der Außenwelt.

2. jQuery erweitern

Nachdem Sie den Bereich definiert haben, müssen Sie das Plug-in auf jQuery erweitern, um externe Aufrufe zu ermöglichen.

//步骤1 定义私有作用域
 (function ($) {
 //步骤2 插件的扩展方法名称
 $.fn.MyFrame = function (options) {
   
 }
 })(jQuery);
Nach dem Login kopieren

3. Standardwert

Wenn Sie nach der Definition des jQuery-Plug-Ins möchten, dass einige Parameter Standardwerte haben, können Sie Folgendes tun kann auf diese Weise angegeben werden.

//步骤1 定义私有作用域
 (function ($) {
 //步骤3 插件的默认值属性
 var defaults = {
  Id: '#id1',
 };
 //步骤2 插件的扩展方法名称
 $.fn.MyFrame = function (options) {
  //步骤3 合并用户自定义属性,默认属性(如果options为空,则使用defaults)
  var options = $.extend(defaults, options);
 }
 })(jQuery);
Nach dem Login kopieren

4. Unterstützen Sie den jQuery-Selektor

//步骤1 定义私有作用域
(function ($) {
//步骤3 插件的默认值属性
var defaults = {
 Id: '#id1',
};
//步骤2 插件的扩展方法名称
$.fn.MyFrame = function (options) {
 //步骤3 合并用户自定义属性,默认属性(如果options为空,则使用defaults)
 var options = $.extend(defaults, options);
}
//步骤4 支持jQuery选择器
this.each(function () {
 
});
})(jQuery);
Nach dem Login kopieren

5. Unterstützen Sie den Kettenaufruf von jQuery

//步骤1 定义私有作用域
 (function ($) {
 //步骤3 插件的默认值属性
 var defaults = {
  Id: '#id1',
 };
 //步骤2 插件的扩展方法名称
 $.fn.MyFrame = function (options) {
  //步骤3 合并用户自定义属性,默认属性(如果options为空,则使用defaults)
  var options = $.extend(defaults, options);
 }
 //步骤4 支持jQuery选择器
 //步骤5 支持链式调用(将步骤4返回)
 return this.each(function () {
 
 });
 })(jQuery);
Nach dem Login kopieren

6. Plug-in-interne Methoden

//步骤1 定义私有作用域
(function ($) {
//步骤3 插件的默认值属性
var defaults = {
 Id: '#id1',
};
 
//步骤6 在插件里定义函数
var MyFun = function (obj) {
 alert(obj);
}
 
//步骤2 插件的扩展方法名称
$.fn.MyFrame = function (options) {
 //步骤3 合并用户自定义属性,默认属性(如果options为空,则使用defaults)
 var options = $.extend(defaults, options);
}
//步骤4 支持jQuery选择器
//步骤5 支持链式调用(将步骤4返回)
return this.each(function () {
 //步骤6 在插件里定义函数
 MyFun(this);
});
})(jQuery);
Nach dem Login kopieren

Aufgrund der Bereichsbeziehung ist die private Funktion in Schritt 6 darf derzeit vom Plug-in intern verwendet werden.

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
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
Beliebte Empfehlungen
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage