document.getElementByid、document.all和document.layers

来源:互联网 发布:小说 超级基因优化液 编辑:程序博客网 时间:2024/04/28 13:02

document.getElementById 是公共标准,被目前的所有主流浏览器支持

document.all只有IE支持。document.all是IE 4.0及以上版本的专有属性,是一个表示当前文档的所有对象的娄组,不仅包括页面上可见的实体对象,还包括一些不可见的对象,比如html注释等等。在document.all数组里面,元素不分层次,是按照其在文档中出现的先后顺序,平行地罗列的。所以可以用数字索引来引用到任何一个元素。但比较常用的是用对象id来引用一个特定的对象,比如document.all["element"]这样。

document.layers是Netscape 4.x专有的属性,是一个代表所有由储如<div><layer>等定位了的元素的数组。通常也是用<div>或<layer>对象的id属性来引用的,但是这里面不包含除此以外的其它元素。

document.all是IE下面的document属下的所有元素的集合
可以通过document.all.length来看到document下面的元素数量
document.all(index)后面的index参数是一个集合方法

如果index是string那么可以获得document下面具有id或name为index的元素 如果只有一个的元素话返回这个元素 如果有多个元素id或name是index的话就返回一个集合 如果没有的话就返回null
这样并不好 因为当你不知道有多少个id或name是index的元素时 就比较容易出错.
如果index是数字的话 那么会返回以0为基础的 文档中第index个元素. 元素的文档序列可以通过Element.sourceIndex来获取

document.getElementById(name) 只返回第一个具有id或name为name的元素 所以不是null就是一个元素 而不会返回集合 这样就大大减少了错误发生的可能性  

如果需要返回一个id或name为name的元素集合的话 就要用 document.getElementsByName(name)来获取

document.getElementById
返回 ID 属性值与指定值相同的第一个对象,如果 ID 属于一个集合,getElementById 方法返回集合中的第一个对象。

document.all
如果 ID 属于一个集合,document.all返回一个集合。而且只支持IE。

所以在使用IE的前提下,document.all(index)要生效需要保证index是唯一的

所以如果你想让你写的js脚本在目前的大多浏览器中使用,需要使用[公共标准] 标准的Javascript

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

显示/隐藏table的3个方法 收藏

方法1:

<table style="display:none" id=x></table>
 
//使用javascript控制
document.getElementById("aaa").style.display=""; //控制table显示
document.getElementById("bbb").style.display="none"; //控制table不显示
 
<tr>在tr里面也可使用 <tr style="display:none"></tr>
<tr   style="visibility:hidden">
//仅隐藏内容  

<tr   style="display:noe">
完全不显示  

方法2:

 

    //table中添加特性

    <table runat="server"   id="xx" style="display:none"> ... </table>

    //后台添加特性

    xxx.Attributes.Add("onclick", "javascript:document.getElementByI("xx").style.display = "";");

 

方法3:

 

    //使用Panel   在 ASP.NET中更加方便

    <asp:Panel ID="paneltotal" runat="server">
             <table id="total" border="0" >
                 <tr>
                     <td>
                         <asp:Label ID="lbTD" runat="server" Width="80px" Text="充值合计"></asp:Label>

                    </td>
                </tr>
             </table>
   </asp:Panel>

 

    //后台控制

    paneltotal.Visible = false;//隐藏

    paneltotal.Visible = false;//显示

原创粉丝点击