文档对象模型(Document Object Model,DOM)是一种用于HTML和XML文档的编程接口。它给文档提供了一种结构化的表示方法,可以改变文档的内容和呈现方式。我们最为关心的是,DOM把网页和脚本以及其他的编程语言联系了起来。DOM属于浏览器,而不是JavaScript语言规范里的规定的核心内容。

一、查找元素

1、直接查找

document.getElementById             根据ID获取一个标签document.getElementsByName          根据name属性获取标签集合document.getElementsByClassName     根据class属性获取标签集合document.getElementsByTagName       根据标签名获取标签集合

2、间接查找

parentNode          // 父节点childNodes          // 所有子节点firstChild          // 第一个子节点lastChild           // 最后一个子节点nextSibling         // 下一个兄弟节点previousSibling     // 上一个兄弟节点 parentElement           // 父节点标签元素children                // 所有子标签firstElementChild       // 第一个子标签元素lastElementChild        // 最后一个子标签元素nextElementtSibling     // 下一个兄弟标签元素previousElementSibling  // 上一个兄弟标签元素

二、操作

1、内容

innerText   文本outerTextinnerHTML   HTML内容innerHTML  value       值

2、属性

attributes                // 获取所有标签属性setAttribute(key,value)   // 设置标签属性getAttribute(key)         // 获取指定标签属性 /*var atr = document.createAttribute("class");atr.nodeValue="democlass";document.getElementById('n1').setAttributeNode(atr);*/
    
    
    
    
    
    
                        
                            
                111                222                                        
                111                222                                        
                111                222                                        
                111                222                            

3、class操作

className                // 获取所有类名classList.remove(cls)    // 删除指定类classList.add(cls)       // 添加类

4、标签操作

a.创建标签

// 方式一var tag = document.createElement('a')tag.innerText = "wupeiqi"tag.className = "c1"tag.href = "http://www.cnblogs.com/wupeiqi" // 方式二var tag = "
wupeiqi"

b.操作标签

// 方式一var obj = "
";xxx.insertAdjacentHTML("beforeEnd",obj);xxx.insertAdjacentElement('afterBegin',document.createElement('p')) //注意:第一个参数只能是'beforeBegin'、 'afterBegin'、 'beforeEnd'、 'afterEnd' // 方式二var tag = document.createElement('a')xxx.appendChild(tag)xxx.insertBefore(tag,xxx[1])

5、样式操作

var obj = document.getElementById('i1') obj.style.fontSize = "32px";obj.style.backgroundColor = "red";

6、位置操作

总文档高度document.documentElement.offsetHeight  当前文档占屏幕高度document.documentElement.clientHeight  自身高度tag.offsetHeight  距离上级定位高度tag.offsetTop  父定位标签tag.offsetParent  滚动高度tag.scrollTop /*    clientHeight -> 可见区域:height + padding    clientTop    -> border高度    offsetHeight -> 可见区域:height + padding + border    offsetTop    -> 上级定位标签的高度    scrollHeight -> 全文高:height + padding    scrollTop    -> 滚动高度    特别的:        document.documentElement代指文档根节点*/

    
    
    
        
        
                

asdf

                

asdf

                

asdf

                

asdf

                

asdf

                
test
    
    
    
        
            
                
                            
            
                    
  •                     
    首页                
  •                 
  •                     
    功能一                
  •                 
  •                     
    功能二                
  •             
            
    
        
            
第1张            
第2张            
第3张                
            
                

第一章

                        
                

第二章

                        
                

第三章

                            
Demo-滚动固定
    
    
    
        
            
                
                            
            
                    
  •                     
    首页                
  •                 
  •                     
    功能一                
  •                 
  •                     
    功能二                
  •             
            
    
        
            
第1张            
第2张            
第3张                
            
                

第一章

                        
                

第二章

                        
                

第三章

                            
Demo-滚动菜单
    
    
    
        
            
                
                            
            
                    
  •                     
    首页                
  •                 
  •                     
    功能一                
  •                 
  •                     
    功能二                
  •             
            
    
        
            
第1张            
第2张            
第3张                
            
                

第一章

                        
                

第二章

                        
                

第三章

                            
Demo-滚动高度

7、提交表单

document.geElementById('form').submit()

8、其他操作

console.log                 输出框alert                       弹出框confirm                     确认框  // URL和刷新location.href               获取URLlocation.href = "url"       重定向location.reload()           重新加载  // 定时器setInterval                 多次定时器clearInterval               清除多次定时器setTimeout                  单次定时器clearTimeout                清除单次定时器

三、事件

对于事件需要注意的要点:

  • this

  • event

  • 事件链以及跳出

this标签当前正在操作的标签,event封装了当前事件的内容。

            
                                
            function Enter(){               var id= document.getElementById("tip")               id.className = 'black';               if(id.value=='请输入关键字'||id.value.trim()==''){                    id.value = ''               }            }            function Leave(){                var id= document.getElementById("tip")                var val = id.value;                if(val.length==0||id.value.trim()==''){                    id.value = '请输入关键字'                    id.className = 'gray';                }else{                    id.className = 'black';                }            }                        
    搜索框
            
        
欢迎blue shit莅临指导          
            function Go(){                var content = document.title;                var firstChar = content.charAt(0)                var sub = content.substring(1,content.length)                document.title = sub + firstChar;            }            setInterval('Go()',1000);                        ×××灯
    
    
Title    
    
    
        
返回顶部        
返回顶部