最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

一些常用的JS功能函數(shù)(2009-06-04更新)

 更新時間:2009年06月04日 17:50:57   作者:  
將 ClientMentInfo類改成了兼容IE6,IE7,IE8,Vista,Windows 7和Firefox
復(fù)制代碼 代碼如下:

//獲取對象
function getObject(objectId,top)
{
    doc = top?window.top.document:document;
    if(typeof(objectId)!="object" && typeof(objectId)!="function")
    {
        if(doc.getElementById && doc.getElementById(objectId))
         {
         // W3C DOM
         return doc.getElementById(objectId);
         }
        else if(doc.getElementsByName(objectId))
        {
            return doc.getElementsByName(objectId)[0];
        }
         else if (doc.all && doc.all(objectId))
         {
         // MSIE 4 DOM
         return doc.all(objectId);
         }
         else if (doc.layers && doc.layers[objectId])
         {
         // NN 4 DOM.. note: this won't find nested layers
         return doc.layers[objectId];
         }
         else
         {
         return false;
         }
    }else
        return objectId;
}
//獲取相對路徑
function getRelativePath()
{
    var url = location.href;//當(dāng)前url
    var urlcs = String(location.search);
    url = url.replace(urlcs,"");
    var path = url.length - url.replace(/\//g,"").length - 3;    //層次為url包含/的長度-沒有包含/的長度再減去項目頭/的個數(shù)

    var str = "";
    for(var i = 0; i < path; i++)
    {
     str += "../";//組合成一個相對路徑的字符串返回
    }
    return str;
}
//加載其他JS文件或CSS文件
function loadjscssfile(filename,filetype,chkonce)
{
    filetype = !filetype?"js":filetype;
    var had = false;
    if(filetype=="js")
    {
        if(chkonce)
        {
            var allScripts = document.getElementsByTagName("script");
            for(var i=0;i<allScripts.length;i++)
            {
                try{
                    if(allScripts[i].src.indexOf(filename)>-1)
                    {
                        had = true;
                        break;
                    }
                }catch(e){}
            }    
        }
        if(!had)
        {
            document.write("<script src=""+filename+"" src=""+filename+"" type='text/javascript'></script>");
        }
    }else
    {
        if(chkonce)
        {
            var allCss = document.getElementsByTagName("link");
            if(allCss.length)
            {
                for(var i=0;i<allCss.length;i++)
                {
                    try{
                        if(allCss[i].href.indexOf(filename)>-1)
                        {
                            had = true;
                            break;
                        }
                    }catch(e){}
                }
            }
        }
        if(!had)
        {
            document.write("<link type='text/css' rel='stylesheet' href=""+filename+"" href=""+filename+"" />");
        }
    }
}
//定義根目錄路徑
var ROOT_PATH = getRelativePath();
var JS_PATH = ROOT_PATH+'js/';
var AJAX_PATH = ROOT_PATH+'ajax/';
var CSS_PATH = ROOT_PATH+'css/';
var IMAGES_PATH = ROOT_PATH+'images/';
var EDITOR_PATH = ROOT_PATH+'uploadeditor/';
var PUB_PATH = ROOT_PATH+'uploadfile/';

//加載公共變量的JS
loadjscssfile(JS_PATH+"globalPara.js");

//設(shè)置下拉表中某一項被選中
function setSelOption(objId,vlu)
{
    objId = getObject(objId);
    for(var i=0;i<objId.options.length;i++)
    {
        if(objId.options[i].value==vlu)
        {
            objId.options[i].setAttribute("selected","selected");
            break;
        }
    }
}
//根據(jù)下拉表中的option文本設(shè)置某一項被選中
function setTxtOption(objId,txt)
{
    objId = getObject(objId);        
    for(var i=0;i<objId.options.length;i++)
    {
        if(objId.options[i].innerHTML==txt)
        {
            objId.options[i].setAttribute("selected","selected");
            break;
        }
    }    
}

//設(shè)置單選按鈕組中某一項被選中
function setSelRadio(objName,vlu)
{
    objName = document.getElementsByName(objName);
    for(var i=0;i<objName.length;i++)
    {
        if(objName[i].value==vlu)
        {
            objName[i].setAttribute("checked","checked");
            break;
        }
    }
}

//根據(jù)ID設(shè)置復(fù)選框中某些項被選中
//vlu 的格式為 : 1,2,3
function setSelCheckbox(prefix,vlu)
{
    var _arr = vlu.split(",");
    if(_arr!="")
    {
        for(var i=0; i<_arr.length; i++)
        {
            getObject(prefix+_arr[i]).checked = true;
        }
    }
}

//快捷輸入,fromObj:來源對象,toObjId:目標(biāo)對象的ID,txt為true時取toObjId的innerHTML值
function fastInput(fromObj,toObjId,txt)
{
    if(fromObj.value=='' || fromObj.value==0) return false;
    txt = !txt ? false : txt;
    var toObj = getObject(toObjId);
    if(txt)
    {
        if(typeof (toObj.value) == 'undefined')
             toObj.innerHTML = toTxt(fromObj.options[fromObj.selectedIndex].innerHTML);
        else
            toObj.value = toTxt(fromObj.options[fromObj.selectedIndex].innerHTML);
    }else
    {
        if(typeof (toObj.value) == 'undefined')
             toObj.innerHTML = fromObj.value;
        else
            toObj.value = fromObj.value;        
    }
}

/*
IE6,IE7上傳圖片前預(yù)覽圖片
IE6下還可以同時檢測圖片的大小
size 單位為KB
<style type="text/css"><!--

.newPreview
{
    width:400px; height:300px;
    FILTER: progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=scale)
}
.nodis{display:none;}
--></style><style type="text/css" bogus="1">
.newPreview
{
    width:400px; height:300px;
    FILTER: progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=scale)
}
.nodis{display:none;}</style>
<input type="file" name="litpic" onchange="PreviewImg(this,'newPreview','ndsPreview',400)" />
<div id="newPreview" class="newPreview"></div>
<img id="ndsPreview" class="nodis" />
*/
function PreviewImg(imgFile,newPreview,ndsPreview,size)
{
    newPreview = getObject(newPreview);
    if(!imgFile || !imgFile.value || !newPreview){return};
    var patn = /\.jpg$|\.jpeg$|\.gif$|\.png$|\.bmp$/i;
    if(patn.test(imgFile.value))
    {
        try{newPreview.filters.item("DXImageTransform.Microsoft.AlphaImageLoader").src = imgFile.value;}catch(e){}
        if(navigator.appVersion.indexOf("MSIE 6.0",0)>-1)
        {
            size=!size?0:size;
            ndsPreview = getObject(ndsPreview);
            if(ndsPreview)
            {
                try{ndsPreview.attachEvent("onreadystatechange", function(){checkImgSize(ndsPreview,size)})}catch(e){}
                ndsPreview.src = imgFile.value;
            }
        }
    }
    else
    {
        alert("您選擇的不是圖像文件,請重新選擇.");
    }
}
function PreviewImgNow(imgDiv,imgFile)
{
    try{getObject(imgDiv).filters.item("DXImageTransform.Microsoft.AlphaImageLoader").src = imgFile}catch(e){}    
}
//上傳之前檢測圖片的大小
//條件是在file改變時要觸發(fā)函數(shù)將縮略圖顯示在img上
//size 單位為KB
function checkImgSize(img,size)
{
    img = getObject(img);
    if(img.readyState == "complete")
    {
        var limit = size * 1024;
        if(img.fileSize > limit)
        {
            alert("出錯!您上傳的圖片大小為"+(parseInt(img.fileSize/1024))+"KB,超過了"+size+"KB的限制,請重新上傳");
            return false
        }else
            return true;
    }
    return true;
}
//檢測客戶端環(huán)境
function ClientMentInfo()
{
    var me = this;    
    var appVer = navigator.userAgent;

    this.GetBrowserName = function (){
        if(appVer.indexOf("MSIE")>0) return "IE";
        else if(appVer.indexOf("Firefox")>0) return "Firefox";
        else if(appVer.indexOf("Chrome")>0) return "Chrome";
        else if(appVer.indexOf("Safari")>0) return "Safari";
        else if(appVer.indexOf("Camino")>0) return "Camino";
        else if(appVer.indexOf("Konqueror")>0) return "Konqueror";
        else return "其它";
    }

    this.GetOSInfo = function (){
        var _pf = navigator.platform;
        if(_pf == "Win32" || _pf == "Windows")
        {

            if(appVer.indexOf("Windows NT 6.0") > -1 || appVer.indexOf("Windows Vista") > -1)
            {
                return 'Windows Vista';    
            }else if(appVer.indexOf("Windows NT 6.1") > -1 || appVer.indexOf("Windows 7") > -1)
            {
                return 'Windows 7';    
            }else
            {
                try{
                    var _winName = Array('2000','XP','2003');
                    var _ntNum = appVer.match(/Windows NT 5.\d/i).toString();
                    return 'Windows ' + _winName[_ntNum.replace(/Windows NT 5.(\d)/i,"$1")];
                }catch(e){return 'Windows';}
            }
        }else if(_pf == "Mac68K" || _pf == "MacPPC" || _pf == "Macintosh")
        {
            return "Mac";            
        }else if(_pf == "X11")
        {
            return "Unix";    
        }else if(String(_pf).indexOf("Linux") > -1)
        {
            return "Linux";    
        }else
        {
            return "Unknow";    
        }        
    }

    this.OS = me.GetOSInfo();        //操作系統(tǒng)類型
    this.IeVer = null;
    this.Bs_lang = (navigator.appName == 'Netscape'?navigator.language:navigator.browserLanguage);//瀏覽器語言版本
    this.Bs_Name = me.GetBrowserName();        //瀏覽器名稱

    //瀏覽器版本
    if(this.Bs_Name=='IE')
    {
        var _msie = appVer.match(/MSIE \d./i).toString();
        this.Bs_Version = this.IeVer = _msie.replace(/MSIE (\d)./i,"$1");
    }else
    {
        this.Bs_Version = appVer;
    }
    this.Ie6 = this.IeVer==6 ? true: false;
    this.Ie7 = this.IeVer==7 ? true: false;
    this.Ie8 = this.IeVer==8 ? true: false;
}
//客戶端信息
var CMInfo = new ClientMentInfo();
//IE6 下緩存背景圖片
if(CMInfo.Ie6)
{
    document.execCommand("BackgroundImageCache", false, true);
}
//設(shè)置復(fù)選框全選或全不選
function setAllCheckbox(formName,objName,num)
{
    if(formName)
        _arr = getObject(formName).elements[objName];
    else
        _arr = typeof(objName)=="object"?objName:document.all(objName);
    if(_arr)
    {
        if(num)
        {
            if (!_arr.length ) // 只有一個復(fù)選框,則length = undefined
                _arr.checked = true;
            else
            {
                for(var i=0; i<_arr.length; i++)
                {
                    _arr[i].checked = true;
                }
            }
        }else
        {
            if (!_arr.length ) // 只有一個復(fù)選框,則length = undefined
                _arr.checked = false;
            else
            {
                for(var i=0; i<_arr.length; i++)
                {
                    _arr[i].checked = false;
                }
            }
        }
    }
}

//使當(dāng)前頁面跳到指定的頁數(shù)頁面
function goPage(pageNum,pageStr)
{
    window.location.href = "?np="+pageNum+pageStr;
}
//分別去字符串前后,左邊,右邊空格
String.prototype.trim = function(){ return this.replace(/^\s+|\s+$/g,"")}
String.prototype.ltrim = function(){ return this.replace(/^\s+/g,"")}
String.prototype.rtrim = function(){ return this.replace(/\s+$/g,"")}

注意globalPara.js本作者常用到的一些每個站自己的常用變量和常量的文件,如果你不需要這樣的文件,可把
//加載公共變量的JS
loadjscssfile(JS_PATH+"globalPara.js");

這兩句刪掉,不然會報錯。

(2009-06-04更新)
將 ClientMentInfo類改成了兼容IE6,IE7,IE8,Vista,Windows 7和Firefox

相關(guān)文章

  • JavaScript中apply與call的用法意義及區(qū)別說明

    JavaScript中apply與call的用法意義及區(qū)別說明

    JavaScript中有一個call和apply方法,其作用基本相同,但也有略微的區(qū)別。
    2010-04-04
  • layer.confirm取消按鈕綁定事件的方法

    layer.confirm取消按鈕綁定事件的方法

    今天小編就為大家分享一篇layer.confirm取消按鈕綁定事件的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-08-08
  • Node.js中AES加密和其它語言不一致問題解決辦法

    Node.js中AES加密和其它語言不一致問題解決辦法

    這篇文章主要介紹了Node.js中AES加密和其它語言不一致問題解決辦法,例如和C#、JAVA語言相互通信時,需要的朋友可以參考下
    2014-03-03
  • JavaScript Date對象詳解

    JavaScript Date對象詳解

    這篇文章主要為大家詳細(xì)介紹了JavaScript Date對象,介紹 Date 日期和時間對象的操作,感興趣的小伙伴們可以參考一下
    2016-03-03
  • Javascript 生成指定范圍數(shù)值隨機(jī)數(shù)

    Javascript 生成指定范圍數(shù)值隨機(jī)數(shù)

    查手冊后才知道, 介紹的信息少得可憐吶, 沒有介紹生成 m-n 范圍的隨機(jī)數(shù)..., 就只是給你一個 Math.random() 了事.
    2009-01-01
  • js實現(xiàn)獲取當(dāng)前時間是本月第幾周的方法

    js實現(xiàn)獲取當(dāng)前時間是本月第幾周的方法

    這篇文章主要介紹了js實現(xiàn)獲取當(dāng)前時間是本月第幾周的方法,涉及javascript針對日期及時間的相關(guān)操作技巧,非常簡單實用,需要的朋友可以參考下
    2015-08-08
  • 純javascript實現(xiàn)圖片延時加載方法

    純javascript實現(xiàn)圖片延時加載方法

    看到一篇博客說土豆網(wǎng)的圖片是延遲加載的。原理是這樣:頁面可見區(qū)域以下的圖片先不加載,等到用戶向下滾動到圖片位置時,再進(jìn)行加載。這樣做的好處是當(dāng)頁面有好幾屏內(nèi)容時,這樣我們就可以只加載用戶需要看的圖片,減少服務(wù)器向用戶瀏覽器發(fā)送圖片文件所產(chǎn)生的負(fù)荷。
    2015-08-08
  • Knockoutjs 學(xué)習(xí)系列(一)ko初體驗

    Knockoutjs 學(xué)習(xí)系列(一)ko初體驗

    本篇主要簡單介紹了knockoutjs中最重要的概念:可觀察對象(數(shù)組)。非常不錯具有參考借鑒價值,感興趣的朋友快來圍觀吧
    2016-06-06
  • JS實現(xiàn)當(dāng)前頁居中分頁效果的方法

    JS實現(xiàn)當(dāng)前頁居中分頁效果的方法

    這篇文章主要介紹了JS實現(xiàn)當(dāng)前頁居中分頁效果的方法,涉及javascript操作頁面元素與樣式的相關(guān)技巧,需要的朋友可以參考下
    2015-06-06
  • 詳解Require.js與Sea.js的區(qū)別

    詳解Require.js與Sea.js的區(qū)別

    RequireJS 和 Sea.js 都是模塊加載器,倡導(dǎo)模塊化開發(fā)理念,核心價值是讓 JavaScript 的模塊化開發(fā)變得簡單自然。這篇文章給大家簡單介紹了Require.js與Sea.js的區(qū)別,感興趣的朋友一起看看吧
    2018-08-08

最新評論

山阴县| 辽阳市| 涿州市| 湘潭县| 喀什市| 大悟县| 太湖县| 台湾省| 南溪县| 中牟县| 奇台县| 南川市| 苏州市| 靖州| 龙南县| 长海县| 丹阳市| 泾源县| 根河市| 革吉县| 五家渠市| 大石桥市| 富平县| 宜君县| 闽清县| 深圳市| 久治县| 灵璧县| 遵化市| 安化县| 修文县| 盐津县| 资中县| 唐河县| 台东县| 石景山区| 湘西| 米易县| 叙永县| 潍坊市| 平远县|