从类中删除jquery函数

时间:2013-05-17 04:09:32

标签: jquery

我有一个名为colors的函数附加到名为.viewShow的div。我想要做的是从元素中删除函数而不删除元素。我似乎无法找到任何东西。有人可以指点我如何从.viewShow中删除颜色功能吗?

if ($.showRestart == 'no') {
    $('.viewShow').colors();
    $.showRestart = 'yes';
} else {
    $('.viewShow');  // I want to remove colors ? ? ? ? ? ? ? ;
    $.showRestart = 'no';
}

我需要添加一些信息以使图片更清晰。我有五个叫做.panels的div,他们都是.viewShow的孩子。我一直在练习的是使用颜色obj中的扩展功能(我相信)。我正在通过.panels改变颜色,从我能理解的是我正在合并下面的两个对象并且它有效。我需要了解的是,一旦函数完成,它再次单击我希望销毁.colors()。 css颜色只是我添加其他功能的测试。

     $(function(b){
            b.fn.extend({
                colors:function(d){
                    d=b.extend({                          
                        panelClass:".panel"
                    },d);
                    return this.each(function(){
                        var a=d;
                        b(this);
                        $(a.panelClass).css("background-color","red");
                    })
                }
            })
        });

3 个答案:

答案 0 :(得分:2)

在jquery中使用unbind函数来删除基于类的函数。例如:$('。classname')。unbind('functionName')

答案 1 :(得分:1)

试试这个!它会删除div中的背景颜色

$('.viewShow').css("background-color","") 

请参阅此jquery-color

答案 2 :(得分:1)

这可能比您想要的更多,但如果您真的想将其剥离,那么重建它

Fiddle

$newthing = $('.viewShow').clone().wrap('<p>').parent().html();
$('.viewShow').after($newthing).remove();