/*-------------
settings.cookie为true时settings.cookieKey将是保存当前选中项索引的cookie的key，当一个页面有多个easyLinkBtnState时，要注意cookie的key不能相同
且页面一定要引用cookie插件jquery.cookie.js
引用方法如下
$(document).ready(function() {
    $("#mainNavDiv > ul").easyLinkBtnState();
});
设置cookie:
$(document).ready(function() {
    $("#mainNavDiv > ul").easyLinkBtnState({cookie:true});
});
设置iniSelObj:obj为dom对象，表示当前选中项
$(document).ready(function() {
    $("#mainNavDiv > ul").easyLinkBtnState({iniSelObj:obj});
});
设置iniSelIndex:index为数字，表示当前选中项索引
$(document).ready(function() {
    $("#mainNavDiv > ul").easyLinkBtnState({iniSelIndex:index});
});
以上案例是操作ul控件中的链接控件（a标签，如果想让该插件支持其他标签，则要扩展该插件）
-------------*/
(function($) {
    $.fn.easyLinkBtnState=function(options) {
        return this.each(function(i){
            if(typeof(options)=='undefined') options = {};
            var settings = defaultSettings();
            if(options) { 
                $.extend(settings, options);
            };
            iniBtnProperty(this);
	        iniEasyLinkBtnState(settings,this);
        }); 
    };
	//默认参数设置
	var defaultSettings=function() {
		return {
			selClass:"current",//选中后行class必选
			cookie:false,//是否记住当前选中项，以备刷新时恢复选中项
			cookieKey:"selObjIndex",//保存当前选中项索引的cookie的key必选
			iniSelObj:null,//初始化时默认选中的链接对象(dom对象)
			iniSelIndex:0,//初始化时默认选中的链接索引，从0开始
			afterClick:function(curBtn) {
			    //curBtn为当前操作的Btn对象
			}
		}
	};
	var iniBtnProperty=function(obj) {
		obj.objState=null;//每次单击后记住btn对象
	};
	function iniEasyLinkBtnState(settings,obj){
	    var btns = $(obj).find("a");
	    if(settings.cookie){
            var objStateInCookie = $.cookie(settings.cookieKey);
            if(objStateInCookie != undefined && objStateInCookie != null){
                obj.objState = btns.get(objStateInCookie);
                $(obj.objState).addClass(settings.selClass);
            }
            else{
	            btns.eq(0).addClass(settings.selClass);
            }
        }
        else if(settings.iniSelObj != undefined && settings.iniSelObj != null){
	        $(settings.iniSelObj).addClass(settings.selClass);
        }
        else{
	        btns.eq(settings.iniSelIndex).addClass(settings.selClass);
        }
	    btns.bind("click", function(){
	        if(obj.objState != null)
	            $(obj.objState).removeClass(settings.selClass);
	        if(settings.cookie){
	            $.cookie(settings.cookieKey, btns.index(this));//记住当前选中项以备刷新时恢复
	        }
	        else{
	            $(this).addClass(settings.selClass);
	            obj.objState = this;
	        }
	        settings.afterClick(this);
	    });
	}
})(jQuery)
