一個網頁裡面的內容理解為一個XML或者說網頁本身也就是一個XML文檔,XML文檔都有很特殊的象徵:"標簽"也叫"節點"。 一個基本的網頁格式 這些是最基本的形態,但是其實它省略了最外面的一個標簽<document> 這其實才是它的本來面目(預設把document標簽給省略了)。document.bo ...
一個網頁裡面的內容理解為一個XML或者說網頁本身也就是一個XML文檔,XML文檔都有很特殊的象徵:"標簽"也叫"節點"。
一個基本的網頁格式
<!DOCTYPE /> <head></head> <body><body />
這些是最基本的形態,但是其實它省略了最外面的一個標簽<document>
<document> <!DOCTYPE /> <head></head> <body><body/> </document>
這其實才是它的本來面目(預設把document標簽給省略了)。document.body 或者docment.head,無論你的什麼操作只要是有關於這個<document>標簽的你跟可以利用document獲得,因為它是根。網頁文檔中任何存在在<document>標簽裡面都是可以獲得的,所有的節點其實都是已經被分類好,但它們的nodeType和nodeName不一樣而已。
代碼寫法一:
function loadScript(url, callback) { var script = document.createElement("script"); script.type = "text/javascript"; if (typeof (callback) != "undefined") { if (script.readyState) { script.onreadystatechange = function () { if (script.readyState == "loaded" || script.readyState == "complete") { script.onreadystatechange = null; callback(); } }; } else { script.onload = function () { callback(); }; } }; script.src = url; document.body.appendChild(script); }
寫法二:
function loadScript(){ var script=document.createElement("script"); script.type="text/javascript"; script.src=null try{ script.appendChild(document.createTextNode("//code")); //javascript內容是利用createTextNode創建的(不過IE不認這個) }catch(ex){ script.text="//code"; //IE認為SCRIPT節點是個特殊的節點所有有個特殊的text屬性 } document.body.appendChild(script); /*相容IE*/ }
動態載入樣式:
// 動態記載樣式 function loadStyle(){ var style=document.createElement("style"); style.type="text/css"; //參考網頁上的style樣式,他怎麼寫你怎麼寫 style.href="style.css"; try{ style .appendChild(document.createTextNode("//style code")); }catch(ex){ style.styleSheet.styleText="//style code"; /*相容IE*/ //IE也認為style節點是個特殊的節點所有有個特殊的styleSheet.styleText屬性 - - } var head=document.getElementByTagName("head")[0]; head.appchild(link); }