我有一个简单的jquery插件。我传递值时工作正常。但是当函数返回值时不起作用。它显示了功能定义。
请在Jsfiddle中尝试
(function ( $ ) {
$.fn.greenify = function( options ) {
var settings = $.extend({
// These are the defaults.
color: "#556b2f",
backgroundColor: "white",
selectedID:function(){}
}, options );
alert(settings.selectedID);
};
}( jQuery ));
//Plugin Call
$( "div" ).greenify({
color: "orange",
//selectedID:6 it is working fine
selectedID:function (){return 5}
});
最佳答案
调用alert()
时,您正在传递对alert(settings.selectedID)
的函数引用,相反,您需要调用settings.selectedID
所引用的函数,并将其返回的值传递给alert()
所以尝试
alert(settings.selectedID());
演示:Fiddle