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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • java注释的作用是什么_java为什么要写注释

    java注释的作用是什么_java为什么要写注释1、什么是注释,有什么用?注释是对java源代码的解释说明。注释可以帮程序员更好的理解程序。2、注释信息只保存在java源文件当中,java源文件编译生成的字节码class文件,这个class文件中是没有这些注释信息的。3、在实际的开发中,一般项目组都要求积极的编写注释。这也是一个java软件工程师的基本素养。4、注释不是写的越多…

    2025年7月5日
    1
  • 10款滑动门代码_jquery 滑动门_js滑动门_tab滑动门_jquery 选项卡_js选项卡_tab选项卡效果(三)

    10款滑动门代码_jquery 滑动门_js滑动门_tab滑动门_jquery 选项卡_js选项卡_tab选项卡效果(三)jquerytab选项卡插件滑动选项卡淡隐淡现选项卡jquerytab选项卡插件轻量级tab选项卡插件支持鼠标滑过、点击、自动切换、数据回调等功能jquery选项卡插件jquerytab选项卡支持垂直选项卡滚动、水平选项卡滚动、自动选项卡切换等。jquerytab选项卡ajax选项卡静态选项卡鼠标点击选项卡鼠标滑过选项卡jquery图片延迟加载插件制作tab选项卡图片异步加载…

    2025年6月5日
    2
  • 无名的ADRC的C语言实现

    无名的ADRC的C语言实现分为ADRC.h和ADRC.c#ifndef_ADRC_H_#define_ADRC_H_/*———————————————————————————————————————-/*本程序只供购买者学习使用,版权著作权属于无名科创团队,*无名科…

    2022年5月19日
    35
  • CNN卷积神经网络原理讲解+图片识别应用(附源码)[通俗易懂]

    CNN卷积神经网络原理讲解+图片识别应用(附源码)[通俗易懂]一、机器如何识图先给大家出个脑筋急转弯:在白纸上画出一个大熊猫,一共需要几种颜色的画笔?——大家应该都知道,只需要一种黑色的画笔,只需要将大熊猫黑色的地方涂上黑色,一个大熊猫的图像就可以展现出来。我们画大熊猫的方式,其实和妈妈们的十字绣很接近——在给定的格子里,绣上不同的颜色,最后就可以展现出一幅特定的“图片”。而机器识图的方式正好和绣十字绣的方式相反,现在有了一幅图片,机器通过识别图片中…

    2022年6月14日
    40
  • Appium依据xpath获取控件实例随笔「建议收藏」

    Appium依据xpath获取控件实例随笔

    2022年1月31日
    39
  • java中random的用法详解

    java中random的用法详解  java中存在两个随机函数,它们分别来自java.long.Math.random()和  java.util.Random();其中前者的适用范围比较小,完全可以被后者取代。一、java.lang.Math.random()方法的用法   ①、方法类型:      publicstaticdoublerandom();      此方法是一个无参,dou…

    2022年6月9日
    46

发表回复

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

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