2011年9月26日 星期一

HTML DOM 筆記

有了 pythonwebkit 後, 可以用 python 直接存取 DOM。於是得自己學一下 DOM 的操作方式, 不能再依賴 jQuery 啦。

花個半小時邊看邊操作 《HTML DOM Tutorial》, 很快就有個基本概念了。記一下自己不熟的部份:

  • DOM 的 node 類型有: document, element, text, attribute, comment
  • element node 沒有包含文字, 要從它的 text node 拿:
    • document.getElementsByTagName('p')[0].nodeValue # null
    • document.getElementsByTagName('p')[0].firstChild.nodeValue # the expected texts
  • 操作 iframe 的內容
    • 取得 iframe 的 DOM: d = document.getElementsByTagName('iframe')[0].contentDocument
    • 接著就能用一樣的 DOM API 操作 d
    • 我只有在 Chrome 下試, 畢竟 pythonwebkit 的功能應該和 Chrome 差不多才對。要跨瀏覽器操作 DOM 的話, 得多試幾種變數, 取出 iframe 的 DOM

沒有留言:

張貼留言

C++ 能否用 memcpy 複製 class / struct 的資料?

答案是: POD (plain old data) type 可以。POD type 可和 C 互通, CPP Reference POD Type 的介紹: Specifies that the type is POD (Plain Old Data) type. Thi...