zoukankan      html  css  js  c++  java
  • 超实用js代码段一

    1: 过滤首尾空格trim、2:过滤左边空格ltrim    3:过滤右边空格 

     
    一:用正则方法写成三个函数.
    <script type="text/javascript">
    function trim(str){ //删除左右两端的空格
      return str.replace(/(^s*)|(s*$)/g, "");
    }
    function ltrim(str){ //删除左边的空格
      return str.replace(/(^s*)/g,"");
    }
    function rtrim(str){ //删除右边的空格
      return str.replace(/(s*$)/g,"");
    }
    </script>

     二:获取鼠标在页面上的位置, 获取元素的绝对left和绝对right

      var
            _mousepos = {//鼠标在页面上的位置
                "top":0,
                "left":0
            },
    
            getMousePoint = function (_e) {
                var _body = document.body,
                        _left = 0,
                        _top = 0
                        ;
                //浏览器支持 pageYOffset, 那么可以使用pageXOffset 和 pageYOffset 获取页面和视窗之间的距离
                if(typeof window.pageYOffset != 'undefined') {
                    _left = window.pageXOffset;
                    _top = window.pageYOffset;
                }
                //如果浏览器指定了DOCTYPE并且支持compatMode
                else if(typeof document.compatMode != 'undefined' && document.compatMode != 'BackCompat') {
                    _left = document.documentElement.scrollLeft;
                    _top = document.documentElement.scrollTop;
                }
                else if(typeof _body != 'undefined') {//其他的如果浏览器支持document.body
                    _left = _body.scrollLeft;
                    _top = _body.scrollTop;
                }
    
                _left += _e.clientX;
                _top += _e.clientY;
                _mousepos.left = _left;
                _mousepos.top = _top;
    
                return _mousepos;
            },
    
            getAbsoluteLeft = function (_e){//获取元素的绝对left
                var _left = _e.offsetLeft,
                        _current = _e.offsetParent;
                while (_current !== null){
                    _left += _current.offsetLeft;
                    _current = _current.offsetParent;
                }
                return _left;
            },
    
            getAbsoluteTop = function (_e){//获取元素的绝对top
                var _top = _e.offsetTop,
                        _current = _e.offsetParent;
                while (_current !== null){
                    _top += _current.offsetTop;
                    _current = _current.offsetParent;
                }
                return _top;
            },

     3.获取日期的指定部分

    /*获取日期的指定部分*/
    var d =new Date(); //获取日期对象
    console.log(d.getFullYear() + "年");//获取年
    console.log((d.getMonth() + 1) + "月");//获取月函数默认是0~11 所以要+1
    console.log(d.getDate() + "日");//获取日
    console.log(d.getHours() + "时");//获取时
    console.log(d.getMinutes() + "分");//获取分
    console.log(d.getSeconds() + "秒");//获取秒

    4.显示当前日期

    //获取当前时间
    function getNowTime(){
                var date =new Date();//获取日期对象
    
                /*获取年、月、日、时、分、秒,本地系统的时间*/
                return date.getFullYear() + "年"
                        + (date.getMonth() + 1) + "月"
                        + date.getDate() + "日"
                        + " "
                        + date.getHours() + "时"
                        + date.getMinutes() + "分"
                        + date.getSeconds() + "秒";
            }
            //显示当前时间
            document.getElementById("nowTime").innerHTML = "时间:" + getNowTime();

    5.日期格式化成字符串

    <body>
        <h2>日期格式化成字符串</h2>
        <p id='formatTime1'>格式化日期1:</p>
        <p id='formatTime2'>格式化日期2:</p>
        <p id='formatTime3'>格式化日期3:</p>
    <script type="text/javascript">
        window.onload = function(){
            //日期格式化成字符串
            function dateFormat(){
                Date.prototype.format = function(f){
                    var date = {//获取对象中的日期
                                "Y" : this.getFullYear(),//获取年
                                "M" : (this.getMonth() + 1),//获取月
                                "D" : this.getDate(),//获取日
                                "h" : this.getHours(),//获取小时
                                "m" : this.getMinutes(),//获取分钟
                                "s" : this.getSeconds()//获取秒
                            },
                            d = "",//初始化接受日期变量的对象
                            r = false,//判断是否存在待替换的字符
                            reg = null,//正则
                            _d = "";//日期
                    ;
    
                    for(d in date){//过滤日期标示符
                        reg = new RegExp("[" + d + "]{1,}", "g");//判断是否有待格式化的字符
                        r = reg.test(f);
    
                        if(r)//验证是否存在
                        {
                            _d = date[d];//被替换的日期
                            f = f.replace(reg, _d < 10 ? ("0" + _d) : _d);
                        }
                    }
    
                    return f;
                }
            }
    
            var d =new Date();//获取日期对象
    
            /*待格式化的日期为当前日期,
             字符格式替换规则:“Y”被替换为年,“M”替换为,“D”替换为日期,“h”替换为小时,“m”替换为分钟,“s”替换为秒
             * */
            dateFormat();
            document.getElementById("formatTime1").innerHTML = "格式化日期1:" + d.format("YYYY-MM-DD h:m:s");
            document.getElementById("formatTime2").innerHTML = "格式化日期2:" + d.format("YYYY/MM/DD h-m-s");
            document.getElementById("formatTime3").innerHTML = "格式化日期3:" + d.format("Y:M:D h:m:s");
        };
    </script>
    </body>
  • 相关阅读:
    Shell 字符串处理
    Shell 变量替换及测试
    ARTS(一)
    instanceof & isAssignableFrom的异同
    mysql 分组排序取最值
    guava-retrying 源码解析(阻塞策略详解)
    guava-retrying 源码解析(时间限制策略)
    guava-retrying 源码解析(停止策略详解)
    guava-retrying 源码解析(等待策略详解)
    guava-retrying 源码解析(导入项目)
  • 原文地址:https://www.cnblogs.com/ChineseMoonGod/p/5077640.html
Copyright © 2011-2022 走看看