Javascript jquery插件shwing$.pluginName未定义
我正在编写一个代码来添加一个HTML元素作为jQuery插件。请检查下面的我的代码:Javascript jquery插件shwing$.pluginName未定义,javascript,jquery-plugins,Javascript,Jquery Plugins,我正在编写一个代码来添加一个HTML元素作为jQuery插件。请检查下面的我的代码: $.dw_inactive = function( options ){ var settings = $.extend({ backgroundColor: "#000", interval: 1000, startTime: 1000, }, options );
$.dw_inactive = function( options ){
var settings = $.extend({
backgroundColor: "#000",
interval: 1000,
startTime: 1000,
}, options );
var dw_inactive_counter = 0;
setTimeout("dw_inactive_check", settings.startTime);
$.fn.dw_inactive_check = function(settings){
if(!$("body").has("div."+settings.className))
{
$("body").add("div").attr("class",settings.className).css({"background-color":settings.backgroundColor});
}
setInterval("dw_inactive_check", settings.interval);
}
}
$.dw_inactive({backgroundColor:"#fff"});
它不工作,显示$。未定义dw_inactive
。那代码有什么问题?
提前感谢您可以尝试以下方法:
function($){
$.dw_inactive = function( options ){
var settings = $.extend({
backgroundColor: "#000",
interval: 1000,
startTime: 1000,
}, options );
var dw_inactive_counter = 0;
setTimeout("dw_inactive_check", settings.startTime);
$.fn.dw_inactive_check = function(settings){
if(!$("body").has("div."+settings.className))
{
$("body").add("div").attr("class",settings.className).css({"background-color":settings.backgroundColor});
}
setInterval("dw_inactive_check", settings.interval);
}
}
}
基本上你所申报的是:
$.fn.dw_inactive_check = function(settings){
$.fn.dw_inactive = function(settings){
你应该申报的是:
$.fn.dw_inactive_check = function(settings){
$.fn.dw_inactive = function(settings){
如果您想这样使用它:
$.dw_inactive({backgroundColor:"#fff"});
这就是为什么它说它是未定义的,因为它不是同一个名称我想把它写成一个jQuery插件。解决方案是什么?我需要编写这个函数,并在几次间隔后调用dw_inactive_check函数。最好的方法是什么?