一種對(duì)瀏覽器頁面操作的處理方法
【專利摘要】本發(fā)明公開了一種對(duì)瀏覽器頁面操作的處理方法,瀏覽器接收不同鼠標(biāo)的鼠標(biāo)消息,瀏覽器進(jìn)程解析各鼠標(biāo)的鼠標(biāo)消息并將其插入到同一個(gè)鼠標(biāo)隊(duì)列中,并給各鼠標(biāo)消息標(biāo)識(shí)不同的鼠標(biāo)ID;瀏覽器進(jìn)程將鼠標(biāo)隊(duì)列通過IPC共享內(nèi)存發(fā)送到渲染進(jìn)程中,渲染進(jìn)程遍歷中的鼠標(biāo)消息,根據(jù)鼠標(biāo)消息的信息解析封裝成不同的javascript消息,消息解析完拋送一個(gè)的消息到瀏覽器頁面,即當(dāng)上述各鼠標(biāo)對(duì)瀏覽器頁面操作時(shí),頁面收到各個(gè)鼠標(biāo)的消息并通過鼠標(biāo)的ID識(shí)別出鼠標(biāo)操作。本發(fā)明通過對(duì)瀏覽器內(nèi)核的修改,實(shí)現(xiàn)多人同時(shí)操作頁面協(xié)同辦公,多人同時(shí)預(yù)覽查看編輯瀏覽器頁面信息,大大提升了資源的利用,給用戶提供了便利,特別是大屏幕操作的用戶。
【專利說明】一種對(duì)瀏覽器頁面操作的處理方法
[0001]
【技術(shù)領(lǐng)域】
[0002]本發(fā)明涉及互聯(lián)網(wǎng)【技術(shù)領(lǐng)域】,更具體地,涉及一種對(duì)瀏覽器頁面操作的處理方法?!颈尘凹夹g(shù)】
[0003]現(xiàn)有對(duì)瀏覽器頁面的處理都是在頁面中編寫javascript代碼,使得當(dāng)頁面接收到鼠標(biāo)消息的時(shí)候去處理相應(yīng)的請(qǐng)求。
[0004]瀏覽器處理鼠標(biāo)的消息的流程如圖1,瀏覽器收到windows鼠標(biāo)消息,瀏覽器窗口進(jìn)程處理鼠標(biāo)消息并封裝成內(nèi)部的消息結(jié)構(gòu),再通過IPC共享內(nèi)存的形式發(fā)送給渲染進(jìn)程。渲染進(jìn)程接收到鼠標(biāo)消息后再判斷所動(dòng)鼠標(biāo)操作是在哪個(gè)元素和那種操作,然后再轉(zhuǎn)換成javascript消息。在頁面上則該元素響應(yīng)到相應(yīng)的消息事件。用戶即可根據(jù)相應(yīng)的消息事件做不同的操作,如:點(diǎn)擊事件,雙擊事件,移動(dòng)元素等。
[0005]而在拼接墻大屏幕上一個(gè)人可視的區(qū)域是有限的,如此就有了多個(gè)鼠標(biāo)同時(shí)對(duì)拼接墻的控制。但是在瀏覽器內(nèi)對(duì)兩個(gè)鼠標(biāo)或者多個(gè)鼠標(biāo)的處理都是按照一個(gè)鼠標(biāo)的數(shù)量邏輯。無法做到區(qū)分不同鼠標(biāo)消息的操作,在編寫頁面應(yīng)用程序時(shí)不能區(qū)分多個(gè)鼠標(biāo),無法實(shí)現(xiàn)多鼠標(biāo)同時(shí)點(diǎn)擊,雙擊,移動(dòng)元素等功能。
【發(fā)明內(nèi)容】
[0006]本發(fā)明為克服上述現(xiàn)有技術(shù)所述的至少一種缺陷(不足),提供一種對(duì)瀏覽器頁面操作的處理方法,對(duì)瀏覽器增加多鼠標(biāo)的javascript的消息,并對(duì)多個(gè)鼠標(biāo)進(jìn)行管理。從而實(shí)現(xiàn)在瀏覽器內(nèi)接收多個(gè)鼠標(biāo)的消息轉(zhuǎn)換成能同時(shí)響應(yīng)的事件,真正做到多人同時(shí)對(duì)頁面元素的點(diǎn)擊,移動(dòng)等操作。
[0007]為了實(shí)現(xiàn)上述目的,本發(fā)明的技術(shù)方案如下:
一種對(duì)瀏覽器頁面操作的處理方法,是基于開源瀏覽器chiOmium的處理方法,瀏覽器接收不同鼠標(biāo)的鼠標(biāo)消息,瀏覽器進(jìn)程解析各鼠標(biāo)的鼠標(biāo)消息并將其插入到同一個(gè)鼠標(biāo)隊(duì)列mouselist中,同時(shí)給各鼠標(biāo)消息標(biāo)識(shí)不同的鼠標(biāo)ID ;瀏覽器進(jìn)程將鼠標(biāo)隊(duì)列mouselist通過IPC共享內(nèi)存發(fā)送到渲染進(jìn)程中,渲染進(jìn)程遍歷mouselist中的鼠標(biāo)消息,根據(jù)鼠標(biāo)消息的信息解析封裝成不同的javascript消息,消息解析完拋送一個(gè)multimouse的消息到瀏覽器頁面,即當(dāng)上述各鼠標(biāo)對(duì)瀏覽器頁面操作時(shí),頁面收到各個(gè)鼠標(biāo)的消息并通過鼠標(biāo)的ID識(shí)別出鼠標(biāo)操作。
[0008]采用該方法用戶就能同時(shí)根據(jù)不同鼠標(biāo)消息編寫javascript消息代碼以完成不同的事情,從而真正做到多個(gè)鼠標(biāo)同時(shí)在瀏覽器上進(jìn)行點(diǎn)擊、移動(dòng)、畫線等共同預(yù)覽及辦公作用。
[0009]與現(xiàn)有技術(shù)相比,本發(fā)明技術(shù)方案的有益效果是:在大屏幕拼接墻上,通過瀏覽器可展示的內(nèi)容信息量是巨大的,但是對(duì)于一個(gè)系統(tǒng)來說,原先的瀏覽器只允許單個(gè)人去預(yù)覽查看其所需要關(guān)注的內(nèi)容。而在大屏幕上不同的人關(guān)注的重點(diǎn)不一樣,采用本方法就可以通過多鼠標(biāo)供不同的人員在頁面上做預(yù)覽和查看。本發(fā)明通過對(duì)瀏覽器內(nèi)核的修改,給javascript開發(fā)人員提供方法實(shí)現(xiàn)多人同時(shí)操作頁面協(xié)同辦公,多人同時(shí)預(yù)覽查看編輯瀏覽器頁面信息的功能。大大提升了資源的利用,給用戶提供了便利,特別是在大屏幕操作的用戶。
【專利附圖】
【附圖說明】
[0010]圖1為現(xiàn)有瀏覽器鼠標(biāo)消息的處理方法流程圖。
[0011]圖2為本發(fā)明的方法流程圖。
【具體實(shí)施方式】
[0012]附圖僅用于示例性說明,不能理解為對(duì)本專利的限制;
為了更好說明本實(shí)施例,附圖某些部件會(huì)有省略、放大或縮小,并不代表實(shí)際產(chǎn)品的尺
寸;
對(duì)于本領(lǐng)域技術(shù)人員來說,附圖中某些公知結(jié)構(gòu)及其說明可能省略是可以理解的。
[0013]下面結(jié)合附圖2和實(shí)施例對(duì)本發(fā)明的技術(shù)方案做進(jìn)一步的說明。
[0014]I)瀏覽器接收到鼠標(biāo)I的鼠標(biāo)消息,瀏覽器進(jìn)程解析鼠標(biāo)I的鼠標(biāo)消息并插入到一個(gè)鼠標(biāo)隊(duì)列mouselist中,并給該鼠標(biāo)消息標(biāo)識(shí)為鼠標(biāo)ID為I的鼠標(biāo)消息。
[0015]2)瀏覽器接收到鼠標(biāo)2的鼠標(biāo)消息,瀏覽器進(jìn)程解析鼠標(biāo)2的鼠標(biāo)消息并插入到鼠標(biāo)隊(duì)列中mouselist中,并給改鼠標(biāo)消息標(biāo)識(shí)為鼠標(biāo)ID為2的鼠標(biāo)消息。
[0016]3)同樣,當(dāng)有其它鼠標(biāo)的鼠標(biāo)消息進(jìn)入時(shí),一并將鼠標(biāo)消息插入到鼠標(biāo)隊(duì)列mouselist中,并給予標(biāo)識(shí)。
[0017]4)瀏覽器進(jìn)程將鼠標(biāo)隊(duì)列mouselist通過IPC共享內(nèi)存發(fā)送到渲染進(jìn)程中,渲染進(jìn)程根據(jù)各個(gè)鼠標(biāo)消息中的坐標(biāo)、鼠標(biāo)類型等信息去查找瀏覽器中所對(duì)應(yīng)元素,然后給相應(yīng)的元素綁定相應(yīng)的鼠標(biāo)消息。
[0018]5)渲染進(jìn)程按照順序(因?yàn)槭髽?biāo)不會(huì)太多,無需太復(fù)雜的方式)遍歷mouselist中的鼠標(biāo)消息,根據(jù)消息的信息解析封裝成不同的javascript消息,假設(shè)鼠標(biāo)ID為I的為mousemove消息,鼠標(biāo)ID為2的為mousedown消息。消息解析完拋送一個(gè)multimouse的消息到瀏覽器頁面中,該multimouse消息中包含了鼠標(biāo)ID為I的mousemove消息內(nèi)容和鼠標(biāo)ID為2的mousedown的消息內(nèi)容。
[0019]6)至此多個(gè)鼠標(biāo)對(duì)瀏覽器頁面操作時(shí),頁面中能收到每個(gè)鼠標(biāo)的消息并能通過鼠標(biāo)ID識(shí)別出鼠標(biāo)ID為I的鼠標(biāo)在做mousemove的操作,鼠標(biāo)ID為2的鼠標(biāo)在做mousedown的操作。用戶此時(shí)就能同時(shí)根據(jù)不同鼠標(biāo)消息編寫javascript代碼完成不同的事情。以此方式,真正做到多個(gè)鼠標(biāo)同時(shí)在瀏覽器上進(jìn)行點(diǎn)擊,移動(dòng),畫線等共同預(yù)覽及辦公的作用。
[0020]上述瀏覽器進(jìn)程通過windows窗口的消息機(jī)制接收到各個(gè)鼠標(biāo)消息或通過TCP網(wǎng)絡(luò)連接接收到各個(gè)遠(yuǎn)程鼠標(biāo)消息,再根據(jù)windows的鼠標(biāo)消息參數(shù)判斷各個(gè)鼠標(biāo)的消息類型。
[0021 ] 上述鼠標(biāo)消息可以為鼠標(biāo)移動(dòng)mousemove、鼠標(biāo)按下mousedown、鼠標(biāo)彈起mouseup、鼠標(biāo)進(jìn)入mouseover、鼠標(biāo)出來mouseout、鼠標(biāo)滾輪mousewheel。針對(duì)各個(gè)鼠標(biāo)消息封裝成多鼠標(biāo)的消息 multimousemove、multimousedown、multimouseup、multimouseover、multimouseout 和 multimousewheel。這些多鼠標(biāo)的消息包含在一個(gè)鼠標(biāo)隊(duì)列,隊(duì)列中有每個(gè)鼠標(biāo)的消息,每個(gè)鼠標(biāo)的消息類型還是mousemove、mouse down >mouseup、mouseover> mouseout、mousewheel。
[0022]相同或相似的標(biāo)號(hào)對(duì)應(yīng)相同或相似的部件;
附圖中描述位置關(guān)系的用于僅用于示例性說明,不能理解為對(duì)本專利的限制;
顯然,本發(fā)明的上述實(shí)施例僅僅是為清楚地說明本發(fā)明所作的舉例,而并非是對(duì)本發(fā)明的實(shí)施方式的限定。對(duì)于所屬領(lǐng)域的普通技術(shù)人員來說,在上述說明的基礎(chǔ)上還可以做出其它不同形式的變化或變動(dòng)。這里無需也無法對(duì)所有的實(shí)施方式予以窮舉。凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進(jìn)等,均應(yīng)包含在本發(fā)明權(quán)利要求的保護(hù)范圍之內(nèi)。
【權(quán)利要求】
1.一種對(duì)瀏覽器頁面操作的處理方法,是基于開源瀏覽器ChiOmium的處理方法,其特征在于, 瀏覽器接收不同鼠標(biāo)的鼠標(biāo)消息,瀏覽器進(jìn)程解析各鼠標(biāo)的鼠標(biāo)消息并將其插入到同一個(gè)鼠標(biāo)隊(duì)列mouselist中,同時(shí)給各鼠標(biāo)消息標(biāo)識(shí)不同的鼠標(biāo)ID ; 瀏覽器進(jìn)程將鼠標(biāo)隊(duì)列mouselist通過IPC共享內(nèi)存發(fā)送到渲染進(jìn)程中,渲染進(jìn)程遍歷鼠標(biāo)隊(duì)列mouselist中的鼠標(biāo)消息,根據(jù)鼠標(biāo)消息的信息解析封裝成不同的javascript消息,消息解析完拋送鼠標(biāo)隊(duì)列multimouse的消息到瀏覽器頁面,即當(dāng)上述各鼠標(biāo)對(duì)瀏覽器頁面操作時(shí),頁面收到各個(gè)鼠標(biāo)的消息并通過鼠標(biāo)的ID識(shí)別出鼠標(biāo)操作。
2.根據(jù)權(quán)利要求1所述的對(duì)瀏覽器頁面操作的處理方法,其特征在于,所述瀏覽器進(jìn)程通過windows窗口的消息機(jī)制接收到各個(gè)鼠標(biāo)消息或通過TCP網(wǎng)絡(luò)連接接收到各個(gè)遠(yuǎn)程鼠標(biāo)消息,再根據(jù)windows的鼠標(biāo)消息參數(shù)判斷各個(gè)鼠標(biāo)的消息類型。
3.根據(jù)權(quán)利要求2所述的對(duì)瀏覽器頁面操作的處理方法,其特征在于,所述渲染進(jìn)程根據(jù)各個(gè)鼠標(biāo)消息中的坐標(biāo)、鼠標(biāo)類型的信息去查找瀏覽器中所對(duì)應(yīng)元素,然后給相應(yīng)的元素綁定相應(yīng)的鼠標(biāo)消息。
4.根據(jù)權(quán)利要求3所述的對(duì)瀏覽器頁面操作的處理方法,其特征在于,所述渲染進(jìn)程按照順序遍歷查找鼠標(biāo)隊(duì)列mouselist中的鼠標(biāo)消息。
5.根據(jù)權(quán)利要求4所述的對(duì)瀏覽器頁面操作的處理方法,其特征在于,所述鼠標(biāo)消息包括鼠標(biāo)移動(dòng)mousemove、鼠標(biāo)按下mousedown、鼠標(biāo)彈起mouseup、鼠標(biāo)進(jìn)入mouseover、鼠標(biāo)出來mouseout、鼠標(biāo)滾輪mousewheel。
6.根據(jù)權(quán)利要求5所述的對(duì)瀏覽器頁面操作的處理方法,其特征在于,所述根據(jù)鼠標(biāo)消息的信息解析封裝成不同的javascript消息,再根據(jù)W3C規(guī)范拋送鼠標(biāo)隊(duì)列multimouse的消息到瀏覽器頁面,multimouse的消息中包含一個(gè)鼠標(biāo)隊(duì)列,鼠標(biāo)隊(duì)列有各個(gè)鼠標(biāo)的消息類型、鼠標(biāo)ID、位置、對(duì)應(yīng)的元素。
【文檔編號(hào)】G06F3/0487GK103645849SQ201310708260
【公開日】2014年3月19日 申請(qǐng)日期:2013年12月20日 優(yōu)先權(quán)日:2013年12月20日
【發(fā)明者】蘇志群, 李嶸 申請(qǐng)人:廣東威創(chuàng)視訊科技股份有限公司