最近寫了一個與JS互動的程式,了解了下HTML ,HTML DOM,JS相關的知識
1.什麼是 DOM?
通過 JavaScript,您可以重構整個 HTML 文檔。您可以添加、移除、改變或重排頁面上的項目。
要改變頁面的某個東西,JavaScript 就需要獲得對 HTML 文檔中所有元素進行通路的入口。這個入口,連同對 HTML 元素進行添加、移動、改變或移除的方法和屬性,都是通過文檔對象模型來獲得的(DOM)。
在 1998 年,W3C 釋出了第一級的 DOM 規範。這個規範允許通路和操作 HTML 頁面中的每一個單獨的元素。
所有的浏覽器都執行了這個标準,是以,DOM 的相容性問題也幾乎難覓蹤影了。
DOM 可被 JavaScript 用來讀取、改變 HTML、XHTML 以及 XML 文檔。
DOM 被分為不同的部分(核心、XML及HTML)和級别(DOM Level 1/2/3):
- Core DOM
- 定義了一套标準的針對任何結構化文檔的對象 XML DOM
- 定義了一套标準的針對 XML 文檔的對象
HTML DOM
定義了一套标準的針對 HTML 文檔的對象。
2.通過DOM,通路HTML文檔中的節點
getElementById() 和 getElementsByTagName()
getElementById() 和 getElementsByTagName() 這兩種方法,可查找整個 HTML 文檔中的任何 HTML 元素。
3.IOS中webview與JS互動的代碼
[webView stringByEvaluatingJavaScriptFromString:@"var script = document.createElement('script');"
"script.type = 'text/javascript';"
"script.text = \"function myFunction() { "
"var field = document.getElementsByName('word')[0];"
"field.value='測試';"
"document.forms[0].submit();"
"}\";"
"document.getElementsByTagName('head')[0].appendChild(script);"];
[webView stringByEvaluatingJavaScriptFromString:@"myFunction();"];
上面的代碼是把JS代碼寫入到html網頁中,然後執行函數,實作JS中的功能。
通過 stringByEvaluatingJavaScriptFromString 函數,可以實作webview強大的互動功能
4.整合了HTML、HTML DOM、JS、IOS 這四塊的知識,JS需要重點加強
5.資料來源:
5.1 HTML知識: http://www.w3school.com.cn/h.asp
5.2 HTML DOM 知識:http://www.w3school.com.cn/htmldom/index.asp