• javascript 实用函数


     
    复制代码
    function addBookMark(url, title){
    //将网页添加到收藏addBookMark(window.location,document.title) 
        if(document.all){
          window.external.addFavorite(url,title);
        }else if (window.sidebar){
          window.sidebar.addPanel(title,url,'');
        }else{
          alert('添加失败');
        }
    }   
    
    
    function setHomepage(obj,url) {
    // setHome(this, window.location) 
        try {   
            obj.style.behavior = 'url(#default#homepage)';   
            obj.setHomePage(url);   
        } catch (e) {   
            if (window.netscape) {   
                try {   
                    netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");   
                } catch (e) {   
                    alert('此操作被浏览器拒绝!\n请在浏览器地址栏输入"about:config"并回车\n然后将 [signed.applets.codebase_principal_support]的值设置为"true",双击即可。');   
                }   
                var prefs = Components.classes['@mozilla.org/preferences-service;1'].getService(Components.interfaces.nsIPrefBranch);   
                prefs.setCharPref('browser.startup.homepage', vrl);   
            }   
        }   
    }   
    
    function boxMove(box){
    //可移动的层
        var w = box.scrollWidth,h = box.scrollHeight;
        var iWidth = document.documentElement.clientWidth; 
        var iHeight = document.documentElement.clientHeight;     
        var moveX = 0,moveY = 0,moveTop = 0,moveLeft = 0,moveable = false;
        box.onmousedown = function(e){    
        moveable = true;     
        e = window.event?window.event:e;
        moveX = e.clientX-box.offsetLeft;        
        moveY = e.clientY-box.offsetTop;
        box.style.zIndex++;
        }
        document.onmousemove = function(e){
            if(moveable){
                e = window.event?window.event:e;        
                var x = e.clientX - moveX;
                var y = e.clientY - moveY;
                if ( x > 0 &&( x + w < iWidth) && y > 0 && (y + h < iHeight)){
                    box.style.left = x + "px";
                    box.style.top = y + "px";
                    box.style.margin = "auto";
                }
            }
        }
        document.onmouseup = function (){moveable = false;};
    }
    
    function getHtmlRoot(){
    /*获得html文档的根元素*/
        if(document.compatMode.toLowerCase()=="css1compat"){
            htmlRoot = document.documentElement;
        }else{
            htmlRoot = document.body;
        }
        return htmlRoot;
    }
    
    
    function showWindow(boxId, closeId, showBg){//弹窗
        htmlRoot = getHtmlRoot();
        box = document.getElementById(boxId);
        boxId = '#' + boxId;
        closeId = '#' + closeId;
        showBox = $(boxId);
        showBox.show();
        z_index = 20;
        moveLeft =  (htmlRoot.clientWidth- box.clientWidth)/2 + htmlRoot.scrollLeft +'px';
        moveTop = (htmlRoot.clientHeight - box.clientHeight)/2 + htmlRoot.scrollTop;+'px';
        showBox.css({position:'absolute', left:moveLeft,zIndex:z_index, top:moveTop});
    
        boxMove(box);
        
        if(showBg){
            objMask = document.createElement("div");
            objMask.className = "BoxMask";
            htmlRoot.appendChild(objMask);
            objMask.style.cssText += 'position:absolute;top:0; left:0;filter:Alpha(Opacity=50);opacity:0.5;background:#AAA;';
            
            objMask.style.zIndex = z_index -1;
            objMask.style.width =  htmlRoot.clientWidth + 'px';
            objMask.style.height = htmlRoot.scrollHeight + htmlRoot.scrollTop + 'px';
        }
        
        $(closeId).click(function(){
            showBox.hide();
            mybg.style.display = "none";
        });
        $('.closeBtn').click = function(){
            showBox.hide();
            mybg.style.display = "none";    
        };
    
    }
    
    function getFormQuery(formId){
    /*生成查询字串*/
        formObj = document.getElementById(formId);
           var i, queryString = "", and = "", itemValue;
           for(i = 0; i<formObj.length; i++ ){
                 var item = formObj[i];
                  if ( item.name!='' ){
                         if(item.type == 'select-one'){
                             itemValue = item.options[item.selectedIndex].value;
                         }else if ( item.type=='checkbox' || item.type=='radio'){
                             if ( item.checked == false ){ continue; }
                             itemValue = item.value;
                         }else if ( item.type == 'button' || item.type == 'submit' || item.type == 'reset' || item.type == 'image'){
                             continue;
                         }else{
                              itemValue = item.value;
                         }
                       //  itemValue = escape(itemValue);
                         queryString += and + item.name + '=' + itemValue;
                         and="&";
                       //queryString += and + encodeURIComponent(item.name) + '=' +encodeURIComponent( itemValue); 
                  }
           }
           return queryString;
    }
    
    //定义js错误处理函数
    onerror = errHandle;
    function errHandle(msg,url,line){
        var txt=""
        txt = "本页中有错误!\n\n"
        txt += "错误: "+ msg +"\n"
        txt += "地址: " + url + "\n"
        txt += "行数: " + line + "\n\n"
        alert(txt);
        return false;
    }
    
    
    function setAutoWidth(id,width,size){
    //最小或最大宽度
        var obj = document.getElementById(id);
        if(size=='max'){
            obj.style.width = (obj.clientWidth > width) ? width + "px" : "auto";
        }else{
            obj.style.width = (obj.clientWidth < width) ? width + "px" : "auto";
        }
    }
    
    function fontScroll(id){
    /*向左滚动的文字 */
        var obj = document.getElementById(id);
        var text = obj.innerHTML;
        var first = text.charAt(0);
        var left = text.substring(1, text.length);
        obj.inerHTML = left + first;
        //这个写函数之外 setInterval('fontScroll(id)', 500);
    }
    
    function bubbleSort(arr){
    /*冒泡排序法*/
    var sign = false // 初始化换位标记为假
    for(var i=0; i < arr.length-1; i++){
        for(varj=0; j < arr.length-1-i; j++){
            if(arr[j]> arr[j+1]){
                vartemp = arr[j]
                arr[j]= arr[j+1]
                arr[j+1]= temp
                sign= true // 若当前这一圈比较中,有过换位,则置换位标记为真
            }
        }
        if(sign)// 判断当前这一圈有过换位否…
           sign= false // 有过换位,则重置换位标记为假
        else
           break// 没有,则终止
        }
    return arr;
    }
    
    function getCoordinate(evt){
    /*获得光标的坐标*/
        var x = evt.clientX;
        var y = evt.clientY;
        document.getElementById('show').innerHTML = x +' &' + y;
    }
    
    
    
    function checkEmail(email){
    /*检测多个以分号(;)分隔的Email格式*/
    if(email != null){
        if(email.indexOf(";",0) == -1){ //indexOf(被查找,起始位)返某个字符串在源字符串中首次出现的位置,失败返回-1
            if(!isEmail(email)){
                alert("单个邮件格式有误,请重输!");
                document.getElementById("email").focus();
                return false;
            }
        }else{
            var emailArr = email.split(";");//split(分隔段,数组总长度)字符串分割成字符串数组
            var i, iMax = emailArr.length;
            for(i = 0; i < iMax; i++){
                if(emailArr[i] != null || emailArr != ""){
                    if(!isEmail(emailArr[i])){
                        alert("多个邮箱格式中有邮箱格式不正确,请重新核对后再输入!");    
                        document.getElementById("email").focus();
                        return false;
                    }
                }
            }
        }    
    }
    function isEmail(str){
       var reg = /^(\w)+(\.\w+)*@(\w)+((\.\w+)+)$/;
       return reg.test(str);//test(被测字串)检测一个字符串是否匹配某个模式.
    }
    }
    复制代码

     

  • 相关阅读:
    《java程序设计》201671010143 周结(11)
    《java程序设计》周结(10)
    《java程序设计》(9)
    201671010142 <<面向对象程序设计(Java) 实验十五 线程 感悟和总结>>
    201671010142 2017-2 《java第十二十三章学习感悟》
    201671010142 2017-2 《java第十二章学习感悟》
    201671010142 2017-2 《java第十一章学习感悟》
    201671010142 2017-2 《java第十章学习感悟》
    201671010142 2017-2 《java第九章学习感悟》
    201671010142 2017-2 《java第八章学习感悟》
  • 原文地址:https://www.cnblogs.com/for917157ever/p/2982413.html
Copyright © 2020-2023  润新知