﻿
//剪辑图像(需支持多个浏览器)//

//创建Cookie//
function createCookie(name,value)
{
    var argv = createCookie.arguments;
    var argc = createCookie.arguments.length;
    var path = (argc > 3) ? argv[3] : "/";
    var domain = (argc > 4) ? argv[4] : null;
    var secure = (argc > 5) ? argv[5] : false;

    var expires = new Date();
    expires.setTime(expires.getTime()+(365*24*60*60*1000));//Cookie期限//

    var exp = new Date();
    exp.setTime (exp.getTime() - 1);

    document.cookie = name + "=" + escape (value) +
                        ((expires == null) ? "" : ("; expires=" + exp.toGMTString())) +
                        ((path == null) ? "" : ("; path=" + path)) +
                        ((domain == null) ? "" : ("; domain=" + domain)) +
                        ((secure == true) ? "; secure" : "");

    document.cookie = name + "=" + escape (value) +
                        ((expires == null) ? "" : ("; expires=" + expires.toGMTString())) +
                        ((path == null) ? "" : ("; path=" + path)) +
                        ((domain == null) ? "" : ("; domain=" + domain)) +
                        ((secure == true) ? "; secure" : "");   
                        
}

//读取Cookie//
function readCookie(name) {
  var nameEQ = name + "=";
  var ca = document.cookie.split(';');
  for(var i=0;i < ca.length;i++) {
    var c = ca[i];
    while (c.charAt(0)==' ') c = c.substring(1,c.length);
    if (c.indexOf(nameEQ) == 0) return unescape(c.substring(nameEQ.length,c.length));
  }
  return null;
}

//删除Cookie//
function deleteCookie(name)
{ 
    var exp = new Date(); 
    exp.setTime (exp.getTime() - 1); 
    var cval = GetCookie (name); 
    window.documents.cookie = name + "=" + cval + "; expires=" + exp.toGMTString()+";path=/";
}

//得到元素的位置//
function getPosition(e)
{
    var left = 0;
    var top = 0;
    while (e.offsetParent)
    { 
        //left   +=   e.offsetLeft   +   (e.currentStyle?(parseInt(e.currentStyle.borderLeftWidth)).NaN0():0); 
        //top     +=   e.offsetTop     +   (e.currentStyle?(parseInt(e.currentStyle.borderTopWidth)).NaN0():0); 
//        left += e.offsetLeft + (e.currentStyle?(parseInt(e.currentStyle.borderLeftWidth)):0); 
//        top += e.offsetTop + (e.currentStyle?(parseInt(e.currentStyle.borderTopWidth)):0); 
        left += e.offsetLeft; 
        top += e.offsetTop; 
        e =   e.offsetParent; 
    } 
    //left   +=   e.offsetLeft   +   (e.currentStyle?(parseInt(e.currentStyle.borderLeftWidth)).NaN0():0); 
    //top     +=   e.offsetTop     +   (e.currentStyle?(parseInt(e.currentStyle.borderTopWidth)).NaN0():0); 
//    left += e.offsetLeft + (e.currentStyle?(parseInt(e.currentStyle.borderLeftWidth)):0);
//    top += e.offsetTop + (e.currentStyle?(parseInt(e.currentStyle.borderTopWidth)):0);

    left += e.offsetLeft; 
    top += e.offsetTop; 

    return {x:left,y:top};
} 

//复制数据至剪切板//
function copyToClipboard(txt)
{
    if(window.clipboardData)
    {    
        var IsSupportClipBoard = window.clipboardData.clearData();    
        if (!IsSupportClipBoard) 
        {
            return;
        }
        
        window.clipboardData.setData("Text", txt);    
        return true;
    }
    else if(navigator.userAgent.indexOf("Opera") != -1)
    {    
        window.location = txt;    
        return true;
    }
    else if (window.netscape)
    {    
        try
        {    
            netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");    
        }
        catch (e)
        {    
            //alert("被浏览器拒绝！\n请在浏览器地址栏输入'about:config'并回车\n然后将'signed.applets.codebase_principal_support'设置为'true'"); //
            return false;   
        }    
        var clip = Components.classes['@mozilla.org/widget/clipboard;1'].createInstance(Components.interfaces.nsIClipboard);    
        if (!clip)    
            return false;   
        var trans = Components.classes['@mozilla.org/widget/transferable;1'].createInstance(Components.interfaces.nsITransferable);    
        if (!trans)    
            return false;   
        trans.addDataFlavor('text/unicode');    
        //var str = new Object();    
        //var len = new Object();    
        var str = Components.classes["@mozilla.org/supports-string;1"].createInstance(Components.interfaces.nsISupportsString);    
        var copytext = txt;    
        str.data = copytext;    
        trans.setTransferData("text/unicode",str,copytext.length*2);    
        var clipid = Components.interfaces.nsIClipboard;    
        if (!clip)    
            return false;    
        clip.setData(trans,null,clipid.kGlobalClipboard);  
        return true;  
    }    

    return true;
}


