2016-05-23
第五章 Javascript編程原則和良好習慣
1.JavaScript 使用window 對象的 open() 方法來創建新的瀏覽器窗口。
這個方法有三個參數:
window.open(url,name,features)
這三個參數是可選的,第一個參數是在新窗口里打開的那份文檔的url地址
第二個參數是新窗口的名字可以在代碼里通過這個名字與新窗口進行通信。
最后一個參數是以逗號分隔的字符串,其內容是新窗口的各種屬性
open() 方法是BOM的一個典型應用案例:它的功能既不依賴于文檔的內容,對文檔的內容也無任何影響。這個方法只與此時此刻的用戶瀏覽環境有關。
典型應用:
《5.3 向CSS學習》
2.循序漸進
只有正確使用標記語言,才能對內容做出準確的描述。標記語言中的各種標記負責提供諸如,“這是列表項”、“這是文本段落”之類的信息。如果不適用 li、p之類的標簽,我們就很難把它區分開來。
所謂的“循序漸進” 就是用一些額外的信息層去包裹原始數據的做法。
3.向后兼容性
對象檢測,對瀏覽器對JavaScript 的支持程度進行查詢。
if(!getElementById || getElementByTagName) return false;
4.
假如此時還有兩個函數:firstFunction() 和 secondFunction() 函數,我想讓他們都在頁面加載時得到執行,那就要逐一綁定到onload 事件上
為了解決這個難題,可以先創建一個匿名函數來容納兩個函數,然后把這個匿名函數綁定到onload 事件上。
另外的解決方案:
此函數名字是 addLoadEvent,它只有一個參數:打算在頁面加載完畢時執行的函數的名字
第7章 動態創建HTML 內容
1.document.write() 方法
document 對象的write() 方法 可以方便快捷地把字符串插入到文檔中。
建議:
應該避免在HTML 文檔的<body> 部分使用<script> 標簽,避免使用 document.write() 方法。
2.innerHTML 屬性
innerHTML 屬性可以用來讀、寫某給定元素里的HTML 內容。
例子:
<div id="testdiv">
<p>This id <em>my</em> content.</p>
</div>
3.createElement() 方法
作為一個編程套路,只要使用了createElement() 方法,就應該把新創建出來的元素賦值給一個變量:
var para = document.createElement("p");
變量para 現在包含著一個指向我們剛創建出來的那個P元素的引用指針。
4.appendChild() 方法
作用:把新創建的節點插入某個文檔的節點樹。
語法:
parent.appendChild(child)