資源描述:
《支持異步調(diào)用的webkit瀏覽器的javascript事件擴(kuò)展方法》由會員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在工程資料-天天文庫。
1、第33卷第1期計(jì)算機(jī)應(yīng)用與軟件Vol33No.12016年1月ComputerApplicationsandSoftwareJan.2016支持異步調(diào)用的WebKit瀏覽器的JavaScript事件擴(kuò)展方法1,2222王碩孫鵬郭志川胡琳琳1(中國科學(xué)院大學(xué)北京100190)2(中國科學(xué)院聲學(xué)研究所國家網(wǎng)絡(luò)新媒體工程技術(shù)研究中心北京100190)摘要在嵌入式瀏覽器中,很多應(yīng)用場景都需要進(jìn)行JavaScript擴(kuò)展,JavaScript代碼和本地組件之間的異步調(diào)用是一個(gè)難點(diǎn)。針對這種情況,基于業(yè)界普遍采用的WebKit內(nèi)核瀏覽器,提出一種擴(kuò)展JavaScript對象的方法。首
2、先研究WebKit中WebCore和JavaScript引擎的綁定機(jī)制,然后提出擴(kuò)展JavaScript對象和自定義JavaScript事件的方法,并給出相應(yīng)實(shí)驗(yàn)結(jié)果。實(shí)驗(yàn)結(jié)果表明該擴(kuò)展方法的有效性,特別適于解決JavaScript和本地組件的異步調(diào)用問題。關(guān)鍵詞 ?。祝澹猓耍椋簟。剩幔觯幔樱悖颍椋穑魯U(kuò)展 JavaScript事件擴(kuò)展異步調(diào)用中圖分類號?。裕校场 ∥墨I(xiàn)標(biāo)識碼 A ?。模希桑海保埃常梗叮梗辏椋螅螅睿保埃埃蔼玻常福叮玻埃保叮埃保埃担叮粒停牛裕龋希模希疲牛兀裕牛危模桑危牵剩粒郑粒樱茫遥桑校裕牛郑牛危裕樱眨校校希遥裕桑危牵粒樱伲危茫龋遥希危希?/p>
3、SINVOCATIONMECHANISMINWEBKITBROWSER1,2222WangShuo SunPeng?。牵酰铮冢瑁椋悖瑁酰幔睢。龋酰蹋椋睿欤椋睿保ǎ眨睿椋觯澹颍螅椋簦铮妫茫瑁椋睿澹螅澹粒悖幔洌澹恚铮妫樱悖椋澹睿悖澹?,Beijing100190,China)2(NationalNetworkNewMediaEngineeringResearchCenter,InstituteofAcoustics,ChineseAcademyofSciences,Beijing100190,China)Abstract ?。剩幔觯幔樱悖颍椋穑簦澹簦澹睿螅椋铮睿椋螅睿澹澹洌?/p>
4、dinmanyapplicationscenariosinembeddedbrowsers,andasynchronousinvocationbetweenJavaScriptcodeandnativemoduleisaproblem.Inviewofthis,weproposedamethodofextendingJavaScriptobjectbasedonthebrowserwithWebKitcorewidelyusedintheindustry.First,westudiedthebindingmechanismbetweenWebCoreandJavaScrip
5、tengineinWebKit.ThenweraisedthemethodsofextendingJavaScriptobjectandcustomisingJavaScriptevent,andpresentedthecorrespondingexperimentalresult.ExperimentalresultshowedthevalidityoftheJavaScriptextensionmethod,itwasespeciallysuitableforasynchronousinvocationbetweenJavaScriptandnativemodule.K
6、eywords ?。祝澹猓耍椋簟。剩幔觯幔樱悖颍椋穑簦澹簦澹睿螅椋铮睢。剩幔觯幔樱悖颍椋穑簦澹觯澹睿簦澹簦澹睿螅椋铮睢。粒螅睿悖瑁颍铮睿铮酰螅椋睿觯铮悖幔簦椋铮顦?gòu)件擴(kuò)展JavaScript對象,文獻(xiàn)[5]基于Qt實(shí)現(xiàn)了JavaScript擴(kuò)0 引言展,文獻(xiàn)[6]采用NP插件擴(kuò)展JavaScript對象。但是以上擴(kuò)展都沒有解決本地代碼和JavaScript異步調(diào)用的問題,針對這一問在手機(jī)、平板電腦、機(jī)頂盒等嵌入式設(shè)備上,用戶不僅可以題,本文提出了一種在WebKit中擴(kuò)展JS事件的方法,并在An通過瀏覽器來獲取互聯(lián)網(wǎng)上的信息,同時(shí)還可以通過瀏覽器操droid系統(tǒng)瀏覽器中
7、實(shí)現(xiàn)了該擴(kuò)展方法。控設(shè)備與本地功能組件交互。以瀏覽器為載體的Web1 在WebKit內(nèi)核中擴(kuò)展JavaScript對象應(yīng)用正逐漸興起,Web應(yīng)用[7]具有開發(fā)門檻低,容易移植WebKit是一個(gè)開源的排版引擎,為瀏覽器繪制網(wǎng)頁。蘋等優(yōu)點(diǎn)。如圖1所示,在構(gòu)建果公司的Safari采瀏覽器用WebKit作為內(nèi)核。Google公司的Web應(yīng)用的時(shí)候,一個(gè)重要Chrome瀏覽器在Chrome28之前也采用WebKit內(nèi)核,后來的版的問題是需要將natvie組件本采用了基于WebKit改進(jìn)的Blink內(nèi)核。WebKit內(nèi)核中主要