日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

WebKit Frame对象分析

發(fā)布時間:2024/4/15 编程问答 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 WebKit Frame对象分析 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

Frame應(yīng)該是整個webcore里面最核心的對象之一,前面在講Page對象的文章中,也提到過,從Page的角度來看,其實一個Page就是由一個或者多個Frame構(gòu)成,而這些Frame是以樹狀的關(guān)系組織,我們來看一段HTML代碼

[css]?view plaincopy
  • <html>??
  • ??<body>??
  • ????hello,?everyone!??
  • ?????<iframe?src="..."/>??
  • ?????<iframe?src?="..."/>??
  • ??</body>??
  • </html>??
  • 在以上的html代碼中,一個Page里面就會有三個Frame,首先任何一個Page都會至少對應(yīng)一個Frame,也就是rootFrame,這個Frame不對應(yīng)iframe節(jié)點(Frame中的m_ownerElement對象為空),也是frame樹的根節(jié)點,還有兩個iframe標(biāo)簽對應(yīng)兩個Frame,如果在iframe的屬性src里面指定的頁面中還含有iframe標(biāo)簽的話,那么也會對應(yīng)一個frame(一個iframe標(biāo)簽對應(yīng)一個frame),這樣frame之間就形成了父子關(guān)系

    以下是Frame的一個類圖關(guān)系

    ?

    其中有很多非常重要的對象,下面我們挑出幾個來分析

    1. Page

    Page前面文章中已經(jīng)提到過。這里表示Frame所在的Page是哪個

    2. EventHander

    事件處理者,我們在網(wǎng)頁上(確切的說是在一個frame上)點擊一個按鈕,或者移動鼠標(biāo),首先底層會將該事件截獲然后報給WebView(Page專題中有提到),然后通過Page找到RootFrame,將該事件交給RootFrame的EventHandler,RootFrame的EventHandler如果發(fā)現(xiàn)其所在Frame有subFrame,會交給subFrame的EventHandler來處理,如果處理成功就返回,否則自己繼續(xù)處理。

    3.FrameView

    FrameView對應(yīng)著一個Frame的顯示,這個數(shù)據(jù)結(jié)構(gòu)也是與render引擎連接的紐帶,該結(jié)構(gòu)里面有一個非常重要的接口,叫layout, 接口里面的內(nèi)容就是render dom樹的過程。也有一個非常重要的數(shù)據(jù)成員 RenderObject* mlayoutRootObject;表示render樹的根節(jié)點.

    在32平臺FrameView是繼承自ScrollableView

    4.ScriptController

    腳本相關(guān)操作的入口,我們知道,一個頁面可以執(zhí)行很多js函數(shù),這個結(jié)構(gòu)就是與js腳本相關(guān)的一個對象。

    5 Document

    表示一個文檔,一個html頁面解析完成,會形成一個dom樹(相關(guān)的知識請看dom規(guī)范),該結(jié)構(gòu)就是表示html頁面解析完成后的結(jié)構(gòu),每個標(biāo)簽都會在document上對應(yīng)一個節(jié)點,這也是非常核心的一個數(shù)據(jù)結(jié)構(gòu),從MVC的角度來看,應(yīng)該是M部分。

    6 DOMWindow

    ?在bom規(guī)范中,js可以訪問一個對象,window(bom規(guī)范定義了一系列的標(biāo)準(zhǔn)接口),通過該window的接口,js用戶可以動態(tài)的控制頁面的內(nèi)容,DOMWindow就是表示那個window接口的實現(xiàn),用一個UML的圖來表示,可以表示成如下

    7. FrameLoader

    頁面加載器,與頁面相關(guān)的加載都由其負(fù)責(zé),里面又包含了很多其他的對象,這也是非常重要的一個對象,后面會專門討論。

    與50位技術(shù)專家面對面20年技術(shù)見證,附贈技術(shù)全景圖

    總結(jié)

    以上是生活随笔為你收集整理的WebKit Frame对象分析的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

    主站蜘蛛池模板: 丁香花完整视频在线观看 | 成人爽a毛片一区二区免费 日本高清免费看 | 精品九九在线 | 欧美一级片在线播放 | 国产一区二区高清视频 | 日日涩| 久久国产精品精品国产色婷婷 | 中文天堂在线视频 | 免费av免费看| 999毛片| av中文字幕网址 | 奇米第四色首页 | 五月天六月婷婷 | 加勒比在线免费视频 | 美女激情网 | 两性动态视频 | 69视频一区二区 | 亚洲av综合色区无码另类小说 | 欧美 亚洲 另类 偷偷 自拍 | 国产精品自拍av | 国产人伦精品一区二区三区 | 99久久久无码国产精品 | www.国产精品.com | 精品少妇久久久久久888优播 | 国产精品综合网 | 国产高潮国产高潮久久久91 | 国产污污网站 | 日本精品免费一区二区三区 | 国产a√精品区二区三区四区 | 亚洲性欧美 | 日韩激情啪啪 | c逼视频| 婷婷激情影院 | 日本jizz在线观看 | 虫族全黄h全肉污文 | 日韩啊v | 日本一区二区不卡在线观看 | 环太平洋3:泰坦崛起 | 亚洲逼图 | 久久色婷婷 | 亚洲精品国产一区 | 日韩欧美大片在线观看 | www.色网 | 亚洲大尺度视频 | 欧美一区二区三区成人久久片 | 精品亚洲精品 | 亚洲av日韩av在线观看 | 四季av中文字幕一区 | 日本少妇网站 | 999久久久精品视频 亚洲视频精品在线 | 欧美日韩高清一区二区 | www.中文字幕 | 国产视频第一页 | 国产在线最新 | 日本爽爽爽爽爽爽在线观看免 | 国产精品乱码妇女bbbb | 69xxx少妇按摩视频 | 黄色专区 | 久久免费资源 | 国产精品第3页 | 亚洲视频一区 | 黄色激情视频网站 | 国产精品亚洲一区二区三区在线观看 | 日韩一级av毛片 | 伊人青青草 | av在线高清观看 | 一级丰满大乳hd高清 | 欧美老司机 | 成年女人色毛片 | 亚洲精品视频一二三区 | 五月网站 | 一级免费大片 | 国产99久久 | 人人插人人爽 | 韩国伦理片免费看 | 可以免费看的黄色网址 | 中文字幕在线观看av | 午夜影院福利社 | 性高潮久久久久久久久久 | 亚洲资源在线播放 | 精品人妻一区二区三区免费看 | 日韩视频在线一区 | 黄色不雅视频 | 国产精品国产三级国产播12软件 | 91视频二区 | 亚洲自拍偷拍综合 | 上原亚衣av一区二区三区 | 青娱乐精品视频 | 美女日批视频在线观看 | 日韩三级国产精品 | 欧美日韩国产精品一区二区 | 久久网站免费观看 | 91精品婷婷国产综合久久蝌蚪 | 日韩一级免费 | 中国老熟女重囗味hdxx | 欧美一级大片免费看 | 欧亚免费视频 | 亚洲免费视频一区二区三区 | 丨国产丨调教丨91丨 |