1.DOM
節點之間的關係:父子級,兄弟級
節點操作:獲取父子節點,兄弟節點
文檔的根節點:document.documetElement
body節點:document.body
當前激活的節點:document.acticeElement //IE
鼠標節點操作:
鼠標事件對象:event
鼠標來源節點:event.fromElement
鼠標去向節點:event.toElement
當前激活的節點:event.srcElement //IE
event.target //ff
節點對象:node
獲取父節點:node.parentNode, node.parendElement,
獲取所有子節點:node.childNodes(包含文本節點及標籤節點),node.children
獲取第一個子節點:node.firstChild
獲取最後一個子節點: node.lastChild
獲取上一個兄弟節點:node.nextSibling
獲取下一個兄弟節點:node.previousSibling
獲取所有兄弟節點:
jquery: $(dom).siblings();
js: 思路:先獲取該節點 的父節點,通過父節點獲取父節點的所有子節點,
排除當前節點
2.DOM操作
增、刪、改、查
增加:寫、創建、克隆、插入
寫:document.write()
創建:document.createElement() || document.createTextNode()
克隆:cloneNode()
插入:appendChild() || inserBefore()
刪除:
刪除節點:removeChild()
刪除元素屬性:removeAttribute()
修改:
修改節點:replaceChild()
修改屬性:setAttribute()
查找:
查找節點:
通過ID獲取節點:document.getElementById("id")
獲取相同元素的節點:getElementByTagName("a")
獲取相同名稱的節點:getElementByName("name")
查找元素:
getAttribute()
3.如何使用事件,DOM 事件模型
在DOM元素上綁定事件處理器 //兼容
window.οnlοad=function(){…}
obj.οnmοuseοver=function(e){…}
obj.οnclick=function(){…}
W3C事件模型 //IE不支持
window.addEventListener(‘load’,function(){…},false);
document.body.addEventListener(‘keypress’,function{…},false);
obj.addEventListener(‘mouseover’,callBack,true);
function callBack(){…}
IE事件模型 //IEwindow.attachEvent(‘onload’,function(){…});
document.body.attachEvent(‘onkeypress’,myKeyHandler);
阻止默認事件 : 在W3C下調用e.preventDefault(),IE下 window.event.returnValue=false
阻止事件冒泡: 在W3C標準裏調用e.stopPropagation(),IE下 window.event.cancelBubble=true。
4.XMLHttpRequest
IE7+、所有瀏覽器都內置了 XMLHttpRequest對象
var xhr = new XMLHttpRequest()
IE5/IE6 下
var xhr = new ActiveXObject("Microsoft.XMLHTTP")
發起XMLHttpRequest請求
xhr.onreadystatechange=state_Change;
xhr.open("GET",url,true);
xhr.send(null)
5.嚴格模式與混雜模式
告訴瀏覽器如何解析CSS=》盒模型引發
嚴格模式:W3C標準模式
混雜模式:兼容老舊瀏覽器
6.盒模型
標準盒模型:
w3c 盒子模型的範圍包括 margin、border、padding、content,並且 content 部分不包含其他部分
IE盒子模型
ie 盒子模型的範圍也包括 margin、border、padding、content,和標準 w3c 盒子模型不同的是:ie 盒子模型的 content 部分包含了 border 和 pading。
7.塊級元素與行內元素
行內元素會在一條直線上排列,都是同一行的,水平方向排列
塊級元素各佔據一行,垂直方向排列。塊級元素從新行開始結束接着一個斷行。
塊級元素可以包含行內元素和塊級元素。行內元素不能包含塊級元素。
行內元素與塊級元素屬性的不同,主要是盒模型屬性上
行內元素設置width無效,height無效(可以設置line-height),margin上下無效,padding上下無效
行內元素轉換爲塊級元素 display:block (字面意思表現形式設爲塊級)
8.浮動元素
float || clear
1.脫離文檔,不佔據空間大小,浮動到包含邊框或者另一個浮動元素邊框