欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

JS---DOM---课程中涉及到的common.js

程序员文章站 2022-07-09 20:17:32
//格式化日期的代码 //获取指定标签对象 //获取元素的文本内容 //获取元素的文本内容 //获取父级元素中的第一个子元素 //获取父级元素中的最后一个子元素 //获取某个元素的前一个兄弟元素 //获取某个元素的后一个兄弟元素 //获取某个元素的所有兄弟元素 //返回当前浏览器是什么类型的浏览器 ......

//格式化日期的代码 //获取指定标签对象 //获取元素的文本内容 //获取元素的文本内容 //获取父级元素中的第一个子元素 //获取父级元素中的最后一个子元素 //获取某个元素的前一个兄弟元素 //获取某个元素的后一个兄弟元素 //获取某个元素的所有兄弟元素 //返回当前浏览器是什么类型的浏览器 //为任意一个元素绑定事件:元素,事件类型,事件处理函数 //为任意的一个元素解绑某个事件:元素,事件类型,事件处理函数

/**
 * 格式化日期
 * @param dt 日期对象
 * @returns {string} 返回值是格式化的字符串日期
 */
function getdates(dt) {
    var str = "";//存储时间的字符串
    //获取年
    var year = dt.getfullyear();
    //获取月
    var month = dt.getmonth() + 1;
    //获取日
    var day = dt.getdate();
    //获取小时
    var hour = dt.gethours();
    //获取分钟
    var min = dt.getminutes();
    //获取秒
    var sec = dt.getseconds();
    month = month < 10 ? "0" + month : month;
    day = day < 10 ? "0" + day : day;
    hour = hour < 10 ? "0" + hour : hour;
    min = min < 10 ? "0" + min : min;
    sec = sec < 10 ? "0" + sec : sec;
    str = year + "年" + month + "月" + day + "日 " + hour + ":" + min + ":" + sec;
    return str;
}
/**
 * 获取指定标签对象
 * @param id 标签的id属性值
 * @returns {element}根据id属性值返回指定标签对象
 */
function my$(id) {
    return document.getelementbyid(id);
}

function setinnertext(element, text) {
    if (typeof element.textcontent == "undefined") {
        element.innertext = text;
    } else {
        element.textcontent = text;
    }
}
/**
 * 获取元素的文本内容
 * @param element 任意元素
 * @returns {*} 任意元素中的文本内容
 */
function getinnertext(element) {
    if (typeof (element.textcontent) == "undefined") {
        return element.innertext;
    } else {
        return element.textcontent;
    }
}
/**
 * 获取父级元素中的第一个子元素
 * @param element 父级元素
 * @returns {*} 父级元素中的子级元素
 */
function getfirstelement(element) {
    if (element.firstelementchild) {
        return element.firstelementchild;
    } else {
        var node = element.firstchild;
        while (node && node.nodetype != 1) {
            node = node.nextsibling;
        }
        return node;
    }
}
/**
 * 获取父级元素中的最后一个子元素
 * @param element 父级元素
 * @returns {*} 最后一个子元素
 */
function getlastelement(element) {
    if (element.lastelementchild) {
        return element.lastelementchild;
    } else {
        var node = element.lastchild;
        while (node && node.nodetype != 1) {
            node = node.previoussibling;
        }
        return node;
    }
}
/**
 * 获取某个元素的前一个兄弟元素
 * @param element 某个元素
 * @returns {*} 前一个兄弟元素
 */
function getpreviouselement(element) {
    if (element.previouselementsibling) {
        return element.previouselementsibling
    } else {
        var node = element.previoussibling;
        while (node && node.nodetype != 1) {
            node = node.previoussibling;
        }
        return node;
    }
}
/**
 * 获取某个元素的后一个兄弟元素
 * @param element 某个元素
 * @returns {*} 后一个兄弟元素
 */
function getnextelement(element) {
    if (element.nextelementsibling) {
        return element.nextelementsibling
    } else {
        var node = element.nextsibling;
        while (node && node.nodetype != 1) {
            node = node.nextsibling;
        }
        return node;
    }
}
/**
 * 获取某个元素的所有兄弟元素
 * @param element 某个元素
 * @returns {array} 兄弟元素
 */
function getsiblings(element) {
    if (!element) return;
    var elements = [];
    var ele = element.previoussibling;
    while (ele) {
        if (ele.nodetype === 1) {
            elements.push(ele);
        }
        ele = ele.previoussibling;
    }
    ele = element.nextsibling;
    while (ele) {
        if (ele.nodetype === 1) {
            elements.push(ele);

        }
        ele = ele.nextsibling;
    }
    return elements;
}
/**
 * 返回当前浏览器是什么类型的浏览器
 */
function userbrowser() {
    var browsername = navigator.useragent.tolowercase();
    if (/msie/i.test(browsername) && !/opera/.test(browsername)) {
        console.log("ie");
    } else if (/firefox/i.test(browsername)) {
        console.log("firefox");
    } else if (/chrome/i.test(browsername) && /webkit/i.test(browsername) && /mozilla/i.test(browsername)) {
        console.log("chrome");
    } else if (/opera/i.test(browsername)) {
        console.log("opera");
    } else if (/webkit/i.test(browsername) && !(/chrome/i.test(browsername) && /webkit/i.test(browsername) && /mozilla/i.test(browsername))) {
        console.log("safari");
    } else {
        console.log("不知道什么鬼!");
    }
}



//为任意一个元素绑定事件:元素,事件类型,事件处理函数
function addeventlistener(element, type, fn) {
    if (element.addeventlistener) {
        //支持
        element.addeventlistener(type, fn, false);
    } else if (element.attachevent) {
        element.attachevent("on" + type, fn);
    } else {
        element["on" + type] = fn;
    }
}
//为任意的一个元素解绑某个事件:元素,事件类型,事件处理函数
function removeeventlistener(element, type, fn) {
    if (element.removeeventlistener) {
        element.removeeventlistener(type, fn, false);
    } else if (element.detachevent) {
        element.detachevent("on" + type, fn);
    } else {
        element["on" + type] = null;
    }
}