封装js的部分兼容性

//获取标签的内容(兼容所有浏览器)function getInnerText(element) {    //能力检测(先判断如果这个能力有这个)    if(typeof element.innerText === "string") {        //说明支持innerText        return element.innerText;    }else {        //说明不支持innerText        return element.textContent;    }}

//设置内容的方法(兼容性问题)function setInnerText(element, value) {    //能力检测    if(typeof element.innerText === "string") {        element.innerText = value;    }else {        element.textContent = value;    }}

//获取指定元素的第一个子元素function getFirstElement(element) {    //能力检测    if (element.firstElementChild) {        return element.firstElementChild;    } else {        //IE679        var node = element.firstChild;        while (node && node.nodeType != 1) {            //说明是一个节点            node = node.nextSibling;        }

return node;    }}

function getLastElement(element) {    //能力检测    if (element.lastElementChild) {        return element.lastElementChild;    } else {        var node = element.lastChild;        while (node && node.nodeType != 1) {            node = node.previousSibling;        }        return node;    }}

function getNextElement(element) {    if (element.nextElementSibling) {        return element.nextElementSibling;    } else {        var node = element.nextSibling;        while (node && node.nodeType != 1) {            node = node.nextSibling;        }        return node;    }}

function getPreviousElement(element) {    if (element.previousElementSibling) {        return element.previousElementSibling;    } else {        var node = element.previousSibling;        while (node && node.nodeType != 1) {            node = node.previousSibling;        }        return node;    }}
时间: 2024-12-29 11:08:18

封装js的部分兼容性的相关文章

封装js千分位加逗号和删除逗号

原文:封装js千分位加逗号和删除逗号 //封装js千分位加逗号和删除逗号 alert( format(2545678754.020001) ) //2,545,678,754.03 alert( format(-2545678754.020001) ) //-2,545,678,754.02 alert( format(2545678754.000000000009) ); //当值很长的时候会出现数字被截取的问题 alert( delformat('2,545,678,754.03') );

手动封装js原生XMLHttprequest异步请求

Code Object.extend =function(targetObj,fnJson){ //扩展方法,类似于jQuery的$.extend,可以扩展类的方法,也可以合并对象 for(var fnName in fnJson){ targetObj[fnName]=fnJson[fnName]; } return targetObj; }; HttpAjax = (function(){ function HttpAjax(options){ var settings={ type:'po

JS、CSS兼容性问题的几点总结

javascript和CSS在不同浏览器下的兼容性问题的几点总结: Javascript部分 1. document.form.item 问题问题:代码中存在 document.formName.item("itemName") 这样的语句,不能在FF下运行解决方法:改用 document.formName.elements["elementName"] 2. 集合类对象问题问题:代码中许多集合类对象取用时使用(),IE能接受,FF不能解决方法:改用 [] 作为下标

封装JS实现Ajax

这两天仔细理解了一下Ajax,然后整理封装了一下,如果有什么不对的地方,请指教,谢谢! AJAX AJAX = Asynchronous JavaScript and XML(异步的 JavaScript 和 XML). AJAX 不是新的编程语言,而是一种使用现有标准的新方法. AJAX 是与服务器交换数据并更新部分网页的艺术,在不重新加载整个页面的情况下. XHR 的出现,提供了向服务器发送请求和解析服务器响应提供了流畅的接口.能够以异步方式从服务器获取更多的信息,这就意味着,用户只要触发某

JS常用事件兼容性处理方法

event.js文件 //跨浏览器事件处理程序[根据能力检测调用] var EventObject = { //添加事件AddEvent:function(obj , type , eventFn){if(obj.addEventListener){//常用obj.addEventListener(type , eventFn , false);}else if(obj.attachEvent){//IE8及以下obj.attachEvent('on'+type , eventFn);}else

自己封装js组件 - 初级

2天前抱着试试看的态度注册了此神博,心血来潮呕心沥血写了一篇关于vue 自定义组件的小文章 尼玛果然一个评论的没有!果然毫无人气!(当然了我这文章内容有限和大神们的比起来简直是粗制滥造...)索性我就把这个博客变成自己学习的笔记记录吧或许这个博客的初衷也是如此吧!奈何我这颗当网红的心啊... 话不多说进入正题,之前看到各种大神自己用js封装插件 然后到处自己用 真尼玛高大上 要说我这几年页没少学习啊 怎么写个组件都不会呢!就在这时我终于在某网站找到了一个非常适合新手上手自己写插件的教程 感觉受益

seajs封装js方法

必须要先引入sea.js文件 <script src="js/sea.js"></script> 其次,引入其他js文件 1 <script> 2 seajs.config({ 3 alias: { 4 "layer": "layer/layer.js", 5 "jsRender": "jquery.jsRender.min.js", 6 "dataInfo&q

封装js组件

一.扩展已经存在的组件1.需求背景很多时候,我们使用jquery.ajax的方式向后台发送请求,型如 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 $.ajax({         type: "post",         url: "/User/Edit",         data: { data: JSON.stringify(postdata) },         success: function (data, st

支付宝小程序之在axml使用封装js

在开发过程中遇到要去除数据中价格后面的小数点,如果要在js中去除小数点需要去循环数组取出数据用parseInt()保留整数显得有点麻烦, 然后就去查看支付宝文档发现有SJS. 这样就可以在 AXML 用 a:for 循环数据然后再用方法去处理数据,这个就像vue中的过滤器一样. 使用方法: 1.创建一个 .sjs 文件 2.在 AXML 页面顶部引入 3.使用 也可以去封装格式化时间,截取字符串等方法. 支付宝小程序文档SJS注意事项: 原文地址:https://www.cnblogs.com/