<script>
$(document).ready(function(){
var num = 0;
$.fn.extend({
AlertDivContent : function(){

if(num % 2 == 0)
{
$(this).changeColor('#000000');
}else {
changeColor('red');
}
num++;
},

changeColor : function (color)
{
$(this).click(function(){
$(this).css("color",color);
});
}
});

$("#content").AlertDivContent();
});
</script>插件写的有毛病,说白了就是个变色,各位大牛请帮忙写下,积分敬上!!!

解决方案 »

  1.   

    本来是一件事为啥要分开两个函数??希望楼主自己思路清晰一点。<script src="http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.4.4.min.js"></script>
    <script language="javascript" type="text/javascript">
    $(document).ready(function(){
                var num = 1;
        $.fn.extend({
            AlertDivContent : function(){
                $(this).bind("click",function(){
    if(num % 2 == 0)
    {
    $(this).css("color",'#000000');
    }else {
    $(this).css("color",'red');
    }
    num++;
    });
                
            }
        });
        
        $("#content").AlertDivContent();
    });
    </script>
    <div style="height:200px;width:100px;" id="content">11</div>
      

  2.   

    直接的相互调就死循环了,你还是先理清自己的思路,这个跟插件无关,就是做好一件事件需要的思路。另外我以前也没写过jq插件也看得出来,你实际是调用了AlertDivContent函数一次,这个函数里面又调用了changeColor一次,所以num的值只变了一次,那你click来click去也没什么用的。