javascript - jquery plugin error -
i'm trying make plugin (from other code have), can't options part work d:
plugin (so far):
(function($){ $.fn.scbox = function(options){ var $opts = $.extend($.fn.scbox.defaults, options); $.fn.scbox.defaults = { start: 40, //i: fn.scbox.defaults.start, width: 200, height: 50, min: 0, step: 10, fontsize: 15, textcolor: "#fff", bgcolor: "#000", slidecolor: "#ff0000" } console.log($.fn.scbox.defaults); } })(jquery);
when try call $.scbox();
, error: uncaught typeerror: object function (a,b){return new e.fn.init(a,b,h)} has no method 'scbox'
want log options gave d:
jquery plugins called on jquery objects. aren't supposed call them directly. you're supposed call on jquery object.
$('#myelement').scbox();
also, you're calling $.extend
on $.fn.scbox.defaults
before declare it.
$.fn.scbox.defaults = { start: 40, //i: fn.scbox.defaults.start, width: 200, height: 50, min: 0, step: 10, fontsize: 15, textcolor: "#fff", bgcolor: "#000", slidecolor: "#ff0000" } var $opts = $.extend($.fn.scbox.defaults, options);
note: $.extend
modifies object passed 1st parameter (it returns it). so, don't need var $opts =
:
$.extend($.fn.scbox.defaults, options); console.log($.fn.scbox.defaults);
or, can do:
var $opts = $.extend({}, $.fn.scbox.defaults, options); console.log($opts);
Comments
Post a Comment