﻿$.loading = {
    obj : null,
    show : function(options){
        options = options || new Object();
        options.text = options.text || "Loading...";
        options.border = options.border || "1px solid #fff";
        options.color = options.color || "white";
        options.backcolor = options.backcolor || "indianred";
        if (!this.obj){
            $.loading.obj = $("<div style='display:block;font-size:12px;position:absolute;padding:2px;color:#fff;left:0px;top:0px;width:100px;z-index:110'>"+
                options.text+"</div>").appendTo(document.body);
        };
        $.loading.obj.show().css("top",document.documentElement.scrollTop).css("border",options.border).css("color",options.color).css("background-color",options.backcolor);
    },
    hide : function(){
        $.loading.obj.hide();
    }
}

jQuery.fn.extend({
    getTop : function(){
        return getTop(this[0]);
    },
    getLeft : function(){
        return getLeft(this[0]);
    }
});

function getTop(e){ 
var offset=e.offsetTop; 
if(e.offsetParent!=null) offset+=getTop(e.offsetParent); 
return offset; 
} 
//获取元素的横坐标 
function getLeft(e){ 
var offset=e.offsetLeft; 
if(e.offsetParent!=null) offset+=getLeft(e.offsetParent); 
return offset; 
}

function SetChanel(Chanel){
    $("a[@Chanel="+Chanel+"]").attr("class","CFM_7_a");
}

Date.prototype.format = function(format)
{
    var o =
    {
        "M+" : this.getMonth()+1, //month
        "d+" : this.getDate(),    //day
        "h+" : this.getHours(),   //hour
        "m+" : this.getMinutes(), //minute
        "s+" : this.getSeconds(), //second
        "q+" : Math.floor((this.getMonth()+3)/3),  //quarter
        "S" : this.getMilliseconds() //millisecond
    }
    if(/(y+)/.test(format))
    format=format.replace(RegExp.$1,(this.getFullYear()+"").substr(4 - RegExp.$1.length));
    for(var k in o)
    if(new RegExp("("+ k +")").test(format))
    format = format.replace(RegExp.$1,RegExp.$1.length==1 ? o[k] : ("00"+ o[k]).substr((""+ o[k]).length));
    return format;
}


String.prototype.toDate = function(format) {
        pattern = format.replace("yyyy", "(\\~1{4})")
        .replace("yy", "(\\~1{2})")
        .replace("MM", "(\\~1{2})")
        .replace("M", "(\\~1{1,2})")
        .replace("dd", "(\\~1{2})")
        .replace("d", "(\\~1{1,2})")
        .replace(/~1/g, "d");

        var returnDate;
        if (new RegExp(pattern).test(this)) {
            var yPos = format.indexOf("yyyy");
            var mPos = format.indexOf("MM");
            var dPos = format.indexOf("dd");
            if (mPos == -1) mPos = format.indexOf("M");
            if (yPos == -1) yPos = format.indexOf("yy");
            if (dPos == -1) dPos = format.indexOf("d");
            var pos = new Array(yPos + "y", mPos + "m", dPos + "d").sort();
            var data = { y: 0, m: 0, d: 0 };
            var m = this.match(pattern);
            for (var i = 1; i < m.length; i++) {

                if (i == 0) return;
                var flag = pos[i - 1].split('')[1];
                data[flag] = m[i];
            };

            if (data.y.toString().length == 2) {
                data.y = parseInt("20" + data.y);
            }
            data.m = data.m - 1;
            returnDate = new Date(data.y, data.m, data.d);
        }
        if (returnDate == null || isNaN(returnDate)) returnDate = new Date();
        return returnDate;
}
