nextSibling的兼容问题「建议收藏」

nextSibling的兼容问题「建议收藏」这个有两个兼容性,innerText不是所有浏览器都兼容的,要用innerHTML 然后就是,对于节点关系,ie有事会将期间的空格当成一个文本节点,但火狐就不会,因此你的nextSibling很可能在ie下取到的是一个文本节点,换在火狐下就是另外一个。本文转自:http://ailantian.bokee.com/6418694.html原文如下:网

大家好,又见面了,我是你们的朋友全栈君。这个有两个兼容性,innerText 不是所有浏览器都兼容的,要用innerHTML  然后就是,对于节点关系,ie有事会将期间的空格当成一个文本节点,但火狐就不会,因此你的nextSibling很可能在ie下取到的是一个文本节点,换在火狐下就是另外一个。

本文转自:http://ailantian.bokee.com/6418694.html

原文如下:

网上firefox和ie的javascript兼容性也讲的比较多了

可以在百度上搜索”firefox javascript 兼容性”

比较简单的东西百度上能找到中文的就用baidu好了.

主要一般都是document.all这样的应用,一般改为getElementById

还有就是一个页面有多个表单的时候需要注意一些问题.

下面还有一些需要补充的

就是firstChild,nextsbiling这两个.

下面给出函数吧.还是代码比较说明问题

代码都是网上来的.

不过要注意的是,getNext和getFirstChild是不一样的

next是下一个,同级别的下一个,不会取到自己这个节点的子节点.

可能是因为对dom的理解不一样ie和firefox对firstChild,nextSbiling的处理不太一样.

所以要取到下一个结点,只能用type来判断了.

function getNextSibling(startBrother){

  endBrother=startBrother.nextSibling;

  while(endBrother.nodeType!=1){

    endBrother = endBrother.nextSibling;

  }

  return endBrother;

}

function getNextSibling1(obj){

if(obj.nextSibling.nodeType==3) {

sibling=obj.nextSibling.nextSibling; // Moz. Opera

}

else {

sibling=obj.nextSibling; // IE

}

return sibling;

}

function getFirstChild(obj){

for (i=0; i<obj.childNodes.length; i++){

if (obj.childNodes[i].nodeType==1)

    return obj.childNodes[i];

else 

    continue;

}

需要使用的时候先getElementByid获取到首结点,然后就可以取到后面的结点了.

另外就是ie不区分变量大小写,收到html首先就格式化了,所以要注意id可能会相同.

会导致一些问题.

另外就是ie会把NULL字符转换成space空格,firefox是不会处理的,但是

如果javascript里面处理NULL会有一些问题.opera基本能够兼容IE的一些

函数,比如documnet.all等等.基本都能用吧,不过空字符还是不行的.是变量中的空字符

会带来问题.

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/158540.html原文链接:https://javaforall.net

(0)
上一篇 2022年7月13日 上午11:36
下一篇 2022年7月13日 上午11:46


相关推荐

  • Java中Map的entrySet()详解

    Java中Map的entrySet()详解由于 Map 中存放的元素均为键值对 故每一个键值对必然存在一个映射关系 Map 中采用 Entry 内部类来表示一个映射项 映射项包含 Key 和 ValueMap Entry 里面包含 getKey 和 getValue 方法 SetIterator lt Map Entry lt Integer Integer gt gt it map entrySet iterator

    2026年3月18日
    2
  • 子空间方法——MUSIC算法

    子空间方法——MUSIC算法多重信号分类 MUSIC 算法 1 MUSIC 算法原理 MUSIC 算法 叫做多信号分类算法 MultipleSign 是一种基于特征结构的高分辨率 DOA 算法 该算法利用了信号子空间和噪声子空间正交性的特点 构造噪声空间然后通过谱峰搜索来检测信号的波达方向 需要注意的是 该算法有一个前提 即各个入射信号之间互不相关 这样才能保证入射信号的协方差矩阵是满秩的 考虑以下这个线阵模型 令 X t X t X t 是在第 ttt 个快拍观察到的数据向量 在阵列信号处理和空间

    2026年3月18日
    2
  • 提问智慧的oracle问题

    提问智慧的oracle问题提问的智慧Oracle版0。尝试在google,论坛,metalink,onlinedocument里搜索。1。写清楚你的执行log,报错信息,写清楚DBversion,OS 2。Instance方面的问题,请贴出alertlog3。network的问题,贴出server的listener.ora,sqlnet.ora并运行lsnrctlservice,贴出cl

    2022年7月26日
    10
  • mysql自定义函数写法_mysql多实例部署

    mysql自定义函数写法_mysql多实例部署本文实例讲述了mysql自定义函数原理与用法。分享给大家供大家参考,具体如下:本文内容:什么是函数函数的创建函数的调用函数的查看函数的修改函数的删除首发日期:2018-04-18什么是函数:函数存储着一系列sql语句,调用函数就是一次性执行这些语句。所以函数可以降低语句重复。【但注意的是函数注重返回值,不注重执行过程,所以一些语句无法执行。所以函数并不是单纯的sql语句集合。】mysql函数有自己…

    2025年10月4日
    3
  • android项目开发实战(android简单app实例代码)

    项目名:HoseWork完成时间:2018-10-01~2018-10-10性质:个人项目Demo地址:点击:https://github.com/FishInWater-1999/Android-app运行效果:产品介绍:学习星是一款面向广大学生、终生学习者打造的课程类app,集成了C,C++,Java,python,C#,JavaScript等十几种编程语言的学…

    2022年4月18日
    109
  • 训练过程–Batchsize(总之一般情况下batchsize能设多大就设多大)[通俗易懂]

    尽可能地设大batchsize "LargeBatchLargeBatch在keypoints上也是有用的,大概能提到0.4到0.3的点的AP。"在利用ImageNet训练AlexNet模型时,其中每GPU的最优批量大小为512。如果我们希望使用大量GPU并保证每GPU皆拥有理想的执行效率,则应当将批量大小设定为16×512=8192。 "Tra…

    2022年4月18日
    37

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号