プラグインに渡す変数名がありますが、その変数は実際には関数です。jquery $.isFunction を使用して関数であるかどうかを確認し、関数である場合は関数を実行する必要があります。
しかし、私はそれを機能させることができないようです.jsfiddleにいくつかの例を入れました: http://jsfiddle.net/tZ6U9/8/
しかし、ここにサンプルコードがあります:
HTML
<a class="one" href="#">click</a><br />
<a class="two" href="#">click</a><br />
<a class="three" href="#">click</a><br />
JS
$(document).ready(function() {
help = function(var1) {
alert(var1);
}
function help2(var1) {
alert(var1);
}
$('a.one').click(function() {
var functionName = "help";
if ($.isFunction([functionName])) {[functionName]("hello");
} else {
alert("not a function");
}
return false;
});
$('a.two').click(function() {
var functionName = "help";
if ($.isFunction(functionName)) {
functionName("hello");
} else {
alert("not a function");
}
return false;
});
$('a.three').click(function() {
var functionName = "help2";
if ($.isFunction(functionName)) {
functionName("hello");
} else {
alert("not a function");
}
return false;
});
$('a.four').click(function() {
var functionName = "help2";
if ($.isFunction([functionName])) {[functionName]("hello");
} else {
alert("not a function");
}
return false;
});
});
ご覧のとおり、私はたくさんのことにうんざりしていましたが、おそらくすべて間違ったものでした... 私はそれらのいくつかにインスピレーションを与えました: jQuery - 関数名として変数を使用
全体的 に、関数と同じ名前の変数を渡しています。jquery を使用して、それが関数であるかどうかを確認します。そうであれば、関数を実行する必要があります。
よろしくお願いします。