Aufrufen einer Funktion innerhalb eines jQuery-Plugins von außen
Ich versuche herauszufinden, wie ich Funktionen in meinem jQuery-Plugin von außerhalb des Plugins aufrufen kann. Der Code, den ich ausprobiert habe, funktioniert nicht. Ich bin mir sicher, dass ich mein Plugin umstrukturieren muss, um dies zu ermöglichen, aber ich weiß nicht, wie. In diesem Beispiel versuche ich, auf die zuzugreifenunderline()
Funktion.
jQuery-Plugin
(function($) {
"use strict";
$.fn.testPlugin = function(options) {
// Settings
var settings = $.extend({
newText : "Yabadabado"
}, options);
return this.each(function(i, el) {
var init = function(callback) {
if( $(el).attr("class") === "red" ) {
$(el).css("color","red");
}
$(el).text(settings.newText);
if( callback && typeof(callback) === "function" ) {
callback();
}
};
var underline = function() {
$(el).addClass("underline");
};
init();
});
};
}(jQuery));
Weisen Sie das Plugin den Selektoren zu
var doTest = $("#testItem").testPlugin({
newText: "Scoobydoo"
});
var doNewTest = $("#newTestItem").testPlugin({
newText: "kapow!"
});
Rufen Sie eine Funktion auf, die sich im Plugin befindet
$("#underline").click(function(e) {
e.preventDefault();
doTest.underline();
});