Heim > Web-Frontend > js-Tutorial > Hauptteil

jQuery definiert die Plug-in-Methode_jquery

WBOY
Freigeben: 2016-05-16 15:24:54
Original
1354 Leute haben es durchsucht

Einige WEB-Entwickler verweisen auf eine JQuery-Klassenbibliothek und schreiben dann $("#"), $(".") auf die Webseite. Nach einigen Jahren des Schreibens werden sie anderen mitteilen, dass sie sehr vertraut sind mit JQuery. Früher war ich so ein Mensch, aber erst ein technischer Austausch im Unternehmen hat dazu geführt, dass ich meine Sicht auf mich selbst geändert habe.

Beim Erweitern von jquery. Die Kernmethoden sind die folgenden zwei:

$.extend(object) kann als Hinzufügen einer statischen Methode zu jquery verstanden werden

$.fn.extend(object) kann als Hinzufügen einer Methode zur JQuery-Instanz verstanden werden

$.extend(object)

Beispiel:

/* $.extend 定义与调用
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
$.extend({ fun: function () { alert("执行方法一"); } });//定义
$.fun();//调用
$.fn.extentd(object)
/* $.fn.extend 定义与调用
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
$.fn.extend({ fun: function () { alert("执行方法"); } });
$(this).fun();
//等同于
$.fn.fun = function () { alert("执行方法三"); }
$(this).fun();
Nach dem Login kopieren

Definieren Sie die Grundstruktur des JQuery-Plug-Ins

1. Geltungsbereich definieren:

Definieren Sie einen privaten Bereich für das Plugin. Externer Code kann nicht direkt auf das Innere des Plug-Ins zugreifen. Der interne Code des Plug-Ins unterliegt keinen externen Eingriffen und verschmutzt auch keine globalen Variablen.

  //step 定义JQuery的作用域
(function ($) {
})(jQuery);
Nach dem Login kopieren

2. Erweiterungsmethoden zum Plug-in hinzufügen:

//step01 定义JQuery的作用域
(function ($) {
  //step02 插件的扩展方法名称
  $.fn.easySlider = function (options) {
    
  }
})(jQuery);
Nach dem Login kopieren

3. Standardwert festlegen:

//step 定义JQuery的作用域
(function ($) {
  //step-a 插件的默认值属性
  var defaults = {
    prevId: ‘prevBtn‘,
    prevText: ‘Previous‘,
    nextId: ‘nextBtn‘,
    nextText: ‘Next‘
    //……
  };
  //step 插件的扩展方法名称
  $.fn.easySlider = function (options) {
    //step-b 合并用户自定义属性,默认属性
    var options = $.extend(defaults, options);
  }
})(jQuery);
Nach dem Login kopieren

Unter ihnen: var options = $.extend(defaults, options) bedeutet. Gibt an, dass Optionen den Wert der Standardwerte überschreiben und den Wert Optionen zuweisen.
In der Plug-In-Umgebung bedeutet dies, dass der vom Benutzer festgelegte Wert den Standardwert des Plug-Ins überschreibt. Wenn der Benutzer das Attribut nicht mit einem Standardwert festlegt, bleibt der Standardwert des Plug-Ins erhalten .

4. Unterstützen Sie den JQuery-Selektor:

 //step 定义JQuery的作用域
(function ($) {
  //step-a 插件的默认值属性
  var defaults = {
    prevId: ‘prevBtn‘,
    prevText: ‘Previous‘,
    nextId: ‘nextBtn‘,
    nextText: ‘Next‘
    //……
  };
  //step 插件的扩展方法名称
  $.fn.easySlider = function (options) {
    //step-b 合并用户自定义属性,默认属性
    var options = $.extend(defaults, options);
    //step 支持JQuery选择器
    this.each(function () {
    });
  }
})(jQuery);
Nach dem Login kopieren

5. Unterstützen Sie den JQuery-Linkaufruf:

Um den Effekt eines Linkaufrufs zu erzielen, muss jedes Element der Schleife zurückgegeben werden

//step 定义JQuery的作用域
(function ($) {
  //step-a 插件的默认值属性
  var defaults = {
    prevId: ‘prevBtn‘,
    prevText: ‘Previous‘,
    nextId: ‘nextBtn‘,
    nextText: ‘Next‘
    //……
  };
  //step 插件的扩展方法名称
  $.fn.easySlider = function (options) {
    //step-b 合并用户自定义属性,默认属性
    var options = $.extend(defaults, options);
    //step 支持JQuery选择器
    //step 支持链式调用
    return this.each(function () {
    });
  }
})(jQuery);
Nach dem Login kopieren

6. Methoden im Plug-in:

Die im Plug-in definierten Methoden können nicht direkt von der Außenwelt aufgerufen werden. Die von mir im Plug-in definierten Methoden belasten die externe Umgebung nicht.

//step01 定义JQuery的作用域
(function ($) {
  //step03-a 插件的默认值属性
  var defaults = {
    prevId: ‘prevBtn‘,
    prevText: ‘Previous‘,
    nextId: ‘nextBtn‘,
    nextText: ‘Next‘
    //……
  };
  //step06-a 在插件里定义方法
  var showLink = function (obj) {
    $(obj).append(function () { return "(" + $(obj).attr("href") + ")" });
  }
  //step02 插件的扩展方法名称
  $.fn.easySlider = function (options) {
    //step03-b 合并用户自定义属性,默认属性
    var options = $.extend(defaults, options);
    //step4 支持JQuery选择器
    //step5 支持链式调用
    return this.each(function () {
      //step06-b 在插件里定义方法
      showLink(this);
    });
  }
})(jQuery);
Nach dem Login kopieren

Der obige Inhalt führt Sie in die Methode zum Definieren von Plug-Ins mit jQuery ein. Ich hoffe, es gefällt Ihnen.

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 Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage