專利名稱:一種實(shí)現(xiàn)滾動條同步的方法
技術(shù)領(lǐng)域:
本發(fā)明屬于網(wǎng)絡(luò)技術(shù)領(lǐng)域,尤其涉及一種實(shí)現(xiàn)滾動條同步的方法。
背景技術(shù):
互聯(lián)網(wǎng)技術(shù)的發(fā)展使我們可以足不出戶就實(shí)現(xiàn)了即時通訊,與好友聊天,與合作伙伴談判等等。目前,基于需要下載安裝的即時通訊工具,如MSN,QQ,網(wǎng)易泡泡已經(jīng)深受大家的喜愛,它為人們的溝通、信息交流提供了新的途徑,是除了手機(jī)、固話、電子郵件之外的又一種重要的信息交流方式。借助這些工具,用戶可以實(shí)現(xiàn)單人或者多人視頻,可以召開網(wǎng)絡(luò)視頻會議,可以進(jìn)行網(wǎng)絡(luò)遠(yuǎn)程教育,還可以讓人和人之間的交流成本大大降低,且提高了效率。文本通訊、音頻通訊、視頻通訊是即時通訊最重要的三大功能。隨著商業(yè)信息化的飛速發(fā)展,人們利用互聯(lián)網(wǎng)進(jìn)行商務(wù)交流也逐步普及,如演示論文成果、企業(yè)計劃書、難題解決方案書等,借助電子白板演示文件往往不能完整地展現(xiàn)給他人觀看,基本上都要借助滾動條展示全文?,F(xiàn)行具備內(nèi)容演示功能的產(chǎn)品比較多,演示文件內(nèi)容均可同步至其他用戶,但當(dāng)演示者拉動滾動條時,其他參與人員的滾動條無法同步,所呈現(xiàn)的文件內(nèi)容區(qū)域也不同,這樣就會造成信息獲取的偏差,影響的交流的效果。而且,這些軟件均需下載安裝,對硬件、費(fèi)用等都有一定的要求。
發(fā)明內(nèi)容
本發(fā)明提供了一種實(shí)現(xiàn)滾動條同步的方法,實(shí)現(xiàn)了無需下載任何控件,網(wǎng)頁上滾動條同步。為達(dá)到上述目的,本發(fā)明的技術(shù)方案為一種網(wǎng)頁上實(shí)現(xiàn)滾動條同步的方法,包括以下步驟1)用戶在網(wǎng)頁區(qū)域進(jìn)行操作,當(dāng)鼠標(biāo)按住滾動條并開始移動時,記錄所滾動區(qū)域的滾動條高度到數(shù)組變量中,當(dāng)鼠標(biāo)彈起時停止記錄;2)在記錄的過程中同時,程序定時從數(shù)組變量中獲取η條記錄,通過調(diào)用Flash的 Socket接口發(fā)送消息到其它需要同步網(wǎng)頁端,并從數(shù)組中清除這η條記錄;3)被同步網(wǎng)頁端Flash收到消息后,通過程序解析消息得到傳遞過來的滾動條高度值,并將被同步區(qū)域的滾動條高度設(shè)置成這個高度值,便實(shí)現(xiàn)滾動同步。上述技術(shù)方案中,其中步驟1)包含如下過程la)用戶打開網(wǎng)頁時,加載Flash插件,F(xiàn)lash插件使用XMLSocket類自動建立與服務(wù)器連接,用于發(fā)送和接收滾動條同步消息;lb)用戶在網(wǎng)頁區(qū)域進(jìn)行操作,當(dāng)鼠標(biāo)按住滾動條并開始移動時,記錄所滾動區(qū)域的滾動條高度到網(wǎng)頁JavaScript數(shù)組變量中,當(dāng)鼠標(biāo)彈起時停止記錄。上述技術(shù)方案中,其中步驟2)包含如下過程
2a)在記錄的過程中,網(wǎng)頁定時使用Jav必cript從數(shù)組變量中獲取η條記錄,并使用Javakript調(diào)用Flash接口并傳入這η條記錄;2b) Flash使用XMLSocket類將傳遞過來的η條記錄組裝成消息發(fā)送到其它需要同步的網(wǎng)頁端;2c)并使用JavMcript從數(shù)組變量中清除這η條記錄。上述技術(shù)方案中,其中步驟幻包含如下過程3a被同步網(wǎng)頁端打開時,加載Flash插件,F(xiàn)lash插件使用XMLSocket類自動建立與服務(wù)器的連接,用于發(fā)送和接收滾動條同步信息;3b)當(dāng)同步端發(fā)送消息成功后,被同步網(wǎng)頁端便可收到這條消息,通過Flash的 XML類及字符串處理函數(shù)對收到的消息進(jìn)行處理,獲得傳遞過來的滾動條高度;3c)Flash 使用 ExternaUnterface 類的 call 函數(shù)調(diào)用 JavaScript 函數(shù),傳入解析出的滾動條高度,JavaScript再通過改變滾動區(qū)域的scrollTop值來改變滾動區(qū)域的滾動條位置,實(shí)現(xiàn)滾動條的同步。本發(fā)明與現(xiàn)有技術(shù)相比具有以下的優(yōu)點(diǎn)1)不需要下載任何控件,即可在網(wǎng)頁上滾動條的同步。2)同步端和被同步端的滾動條一模一樣,從而保證了內(nèi)容在顯示上的一致性,而且同步及時、高效。3)對軟、硬件要求比較低,能夠很方便嵌入其它系統(tǒng)中進(jìn)行應(yīng)用。4)技術(shù)實(shí)現(xiàn)簡單、思路清晰,運(yùn)用門檻低,技術(shù)上很容易普及和被接受?!N網(wǎng)頁上實(shí)現(xiàn)滾動條同步的方法,旨在解決網(wǎng)頁上滾動條同步的問題;該發(fā)明無需下載任何控件、高速高效、方便實(shí)用;完全在網(wǎng)頁上即可實(shí)現(xiàn),是一種真正意義上能夠普及大眾的技術(shù),并且實(shí)現(xiàn)原理簡單,能夠很方便地嵌入各種網(wǎng)絡(luò)會議、遠(yuǎn)程教育等應(yīng)用中。
此處所說明的附圖用來提供對本發(fā)明的進(jìn)一步理解,構(gòu)成本申請的一部分,本發(fā)明的示意性實(shí)施例及其說明用于解釋本發(fā)明,并不構(gòu)成對本發(fā)明的不當(dāng)限定。在附圖中圖1是本發(fā)明實(shí)施例1的詳細(xì)流程圖;圖2是本發(fā)明實(shí)施例2的詳細(xì)流程圖。
具體實(shí)施例方式以下將參考附圖并結(jié)合實(shí)施例來詳細(xì)說明本發(fā)明。需要說明的是,在不沖突的情況下,本申請中的實(shí)施例及實(shí)施例中的特征可以相互組合。一種網(wǎng)頁上實(shí)現(xiàn)滾動條同步的方法,包括以下步驟1)用戶在網(wǎng)頁區(qū)域進(jìn)行操作,當(dāng)鼠標(biāo)按住滾動條并開始移動時,記錄所滾動區(qū)域的滾動條高度到數(shù)組變量中,當(dāng)鼠標(biāo)彈起時停止記錄;2)在記錄的過程中,同時程序定時從數(shù)組變量中獲取η條記錄,通過調(diào)用Flash的 Socket接口發(fā)送消息到其它需要同步網(wǎng)頁端,并從數(shù)組中清除這η條記錄;3)被同步網(wǎng)頁端Flash收到消息后,通過程序解析消息得到傳遞過來的滾動條高度值,并將被同步區(qū)域的滾動條高度設(shè)置成這個高度值,便實(shí)現(xiàn)滾動同步。下面進(jìn)一步詳細(xì)說明本發(fā)明所述的方法參見說明書附圖中的附圖1、附圖2,用戶打開網(wǎng)頁時,加載Flash插件,F(xiàn)lash 插件使用XMLSocket類自動建立與服務(wù)器連接,用于發(fā)送和接收滾動條同步消息;用戶在網(wǎng)頁區(qū)域進(jìn)行操作,當(dāng)鼠標(biāo)按住滾動條并開始移動時,記錄所滾動區(qū)域的滾動條高度到網(wǎng)頁JavMcript數(shù)組變量中,當(dāng)鼠標(biāo)彈起時停止記錄;在記錄的過程中,網(wǎng)頁定時使用 JavaScript從數(shù)組變量中獲取η條記錄,并使用JavMcript調(diào)用Flash接口并傳入這η 條記錄;Flash使用XMLSocket類將傳遞過來的η條記錄組裝成消息發(fā)送到其它需要同步的網(wǎng)頁端;并使用JavMcript從數(shù)組變量中清除這η條記錄;被同步網(wǎng)頁端在打開時,加載Flash插件,F(xiàn)lash插件使用XMLSocket類自動建立與服務(wù)器的連接,用于發(fā)送和接收滾動條同步信息;當(dāng)同步端發(fā)送消息成功后,被同步網(wǎng)頁端便可收到這條消息,通過Flash的 XML類及字符串處理函數(shù)對收到的消息中進(jìn)行處理,獲得傳遞過來的滾動條的高度;Flash 使用ExternaUnterface類的call函數(shù)調(diào)用Javakript函數(shù),傳入解析出的滾動條高度, JavaScript再通過改變滾動區(qū)域的scrollTop值來改變滾動區(qū)域的滾動條位置,實(shí)現(xiàn)滾動條的同步。圖1是本發(fā)明實(shí)施例1的詳細(xì)流程圖,詳細(xì)步驟如下步驟101 開始;步驟102 用戶在網(wǎng)頁區(qū)域進(jìn)行操作;步驟103 鼠標(biāo)按住滾動條開始移動時,記錄滾動條高度到數(shù)據(jù)變量;步驟104 鼠標(biāo)彈起時停止記錄;步驟105 結(jié)束;步驟106 程序定時獲取η條坐標(biāo)記錄通過Flash的Socket接口發(fā)送到其它需要同步的網(wǎng)頁端,并清除這η條數(shù)據(jù);步驟107 開始;步驟108 用戶打開網(wǎng)頁,查看內(nèi)容;步驟109 網(wǎng)頁收到Socket消息,通過處理改變滾動區(qū)域滾動條高度;步驟110:結(jié)束。圖2是本發(fā)明實(shí)施例2的詳細(xì)流程圖,詳細(xì)步驟如下步驟201:開始;步驟202 用戶打開網(wǎng)頁;步驟203 加載Flash插件,使用XMLSocket類建立與服務(wù)器連接;步驟204 用戶在網(wǎng)頁區(qū)域進(jìn)行操作;步驟205 鼠標(biāo)按住滾動條開始移動時,記錄滾動條高度到數(shù)據(jù)變量;步驟206 鼠標(biāo)彈起時停止記錄;步驟207:結(jié)束;步驟208 JavaScript定時獲取η條坐標(biāo)記錄,調(diào)用Flash接口進(jìn)行數(shù)據(jù)組裝, Flash使用XMLSocket類發(fā)送數(shù)據(jù)到其它需要同步的網(wǎng)頁端,并清除這η條數(shù)據(jù);步驟209:開始;步驟210 用戶打開網(wǎng)頁;
步驟211 加載Flash插件,使用XMLSocket類建立與服務(wù)器連接;步驟212 網(wǎng)頁收到Socket消息,通過處理改變,網(wǎng)頁滾動區(qū)域滾動條高度;步驟213:結(jié)束。顯然,本領(lǐng)域的技術(shù)人員應(yīng)該明白,上述的本發(fā)明的各步驟可以用通用的計算裝置來實(shí)現(xiàn),它們可以集中在單個的計算裝置上,或者分布在多個計算裝置所組成的網(wǎng)絡(luò)上, 可選地,它們可以用計算裝置可執(zhí)行的程序代碼來實(shí)現(xiàn),從而,可以將它們存儲在存儲裝置中由計算裝置來執(zhí)行,并且在某些情況下,可以以不同于此處的順序執(zhí)行所示出或描述的步驟,或者將它們分別制作成各個集成電路模塊,或者將它們中的多個模塊或步驟制作成單個集成電路模塊來實(shí)現(xiàn)。這樣,本發(fā)明不限制于任何特定的硬件和軟件結(jié)合。以上所述僅為本發(fā)明的優(yōu)選實(shí)施例而已,并不用于限制本發(fā)明,對于本領(lǐng)域的技術(shù)人員來說,本發(fā)明可以有各種更改和變化。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
權(quán)利要求
1.一種實(shí)現(xiàn)滾動條同步的方法,其特征在于,包括以下步驟1)用戶在網(wǎng)頁區(qū)域進(jìn)行操作,當(dāng)鼠標(biāo)按住滾動條并開始移動時,記錄所滾動區(qū)域的滾動條高度到數(shù)組變量中,當(dāng)鼠標(biāo)彈起時停止記錄;2)在記錄的過程中同時,程序定時從數(shù)組變量中獲取η條記錄,通過調(diào)用Flash的 Socket接口發(fā)送消息到其它需要同步網(wǎng)頁端,并從數(shù)組中清除這η條記錄;3)被同步網(wǎng)頁端Flash收到消息后,通過程序解析消息得到傳遞過來的滾動條高度值,并將被同步區(qū)域的滾動條高度設(shè)置成這個高度值,便實(shí)現(xiàn)滾動同步。
2.如權(quán)利要求1所述的方法,其特征在于,其中步驟1)包含如下過程la)用戶打開網(wǎng)頁時,加載Flash插件,F(xiàn)lash插件使用XMLSocket類自動建立與服務(wù)器連接,用于發(fā)送和接收滾動條同步消息;lb)用戶在網(wǎng)頁區(qū)域進(jìn)行操作,當(dāng)鼠標(biāo)按住滾動條并開始移動時,記錄所滾動區(qū)域的滾動條高度到網(wǎng)頁JavaScript數(shù)組變量中,當(dāng)鼠標(biāo)彈起時停止記錄。
3.如權(quán)利要求1所述的方法,其特征在于,其中步驟2)包含如下過程2a)在記錄的過程中,網(wǎng)頁定時使用JavaScript從數(shù)組變量中獲取η條記錄,并使用 JavaScript調(diào)用Flash接口并傳入這η條記錄;2b) Flash使用XMLSocket類將傳遞過來的η條記錄組裝成消息發(fā)送到其它需要同步的網(wǎng)頁端;2c)并使用JavaScript從數(shù)組變量中清除這η條記錄。
4.如權(quán)利要求1所述的方法,其特征在于,其中步驟3)包含如下過程3a)被同步網(wǎng)頁端打開時,加載Flash插件,F(xiàn)lash插件使用XMLSocket類自動建立與服務(wù)器的連接,用于發(fā)送和接收滾動條同步信息;3b)當(dāng)同步端發(fā)送消息成功后,被同步網(wǎng)頁端便可收到這條消息,通過Flash的XML類及字符串處理函數(shù)對收到的消息進(jìn)行處理,獲得傳遞過來的滾動條高度;3c)Flash使用ExternalInterface類的call函數(shù)調(diào)用JavaScript函數(shù),傳入解析出的滾動條高度,JavaScript再通過改變滾動區(qū)域的scrollTop值來改變滾動區(qū)域的滾動條位置,實(shí)現(xiàn)滾動條的同步。
5.一種實(shí)現(xiàn)滾動條同步的方法,其特征在于用戶將選擇的滾動區(qū)域的滾動信息通過服務(wù)器發(fā)送給被同步網(wǎng)頁端;所述被同步網(wǎng)頁端通過解析所述滾動信息,實(shí)現(xiàn)滾動同步。
6.根據(jù)權(quán)利要求5所述的方法,其特征在于所述用戶在網(wǎng)頁區(qū)域進(jìn)行操作,當(dāng)鼠標(biāo)按住滾動條并開始移動時,記錄所滾動區(qū)域的滾動條高度到數(shù)組變量中,當(dāng)鼠標(biāo)彈起時停止記錄。
7.根據(jù)權(quán)利要求6所述的方法,其特征在于在記錄的過程中同時,程序定時從所述數(shù)組變量中獲取η條記錄,通過調(diào)用Flash的Socket接口發(fā)送消息到所述被同步網(wǎng)頁端,并從數(shù)組中清除這η條記錄。
8.根據(jù)權(quán)利要求7所述的方法,其特征在于所述被同步網(wǎng)頁端Flash收到消息后,通過程序解析消息得到傳遞過來的滾動條高度值,并將被同步區(qū)域的滾動條高度設(shè)置成所述高度值,實(shí)現(xiàn)滾動條同步。
9.根據(jù)權(quán)利要求6所述的方法,其特征在于所述用戶在網(wǎng)頁區(qū)域進(jìn)行操作,當(dāng)鼠標(biāo)按住滾動條并開始移動時,記錄所滾動區(qū)域的滾動條高度到數(shù)組變量中,當(dāng)鼠標(biāo)彈起時停止記錄的過程為所述用戶打開網(wǎng)頁時,加載Flash插件,所述Flash插件使用XMLSocket類自動建立與服務(wù)器連接,用于發(fā)送和接收滾動條同步消息;所述用戶在網(wǎng)頁區(qū)域進(jìn)行操作, 當(dāng)鼠標(biāo)按住滾動條并開始移動時,記錄所滾動區(qū)域的滾動條高度到網(wǎng)頁JavaScript數(shù)組變量中,當(dāng)鼠標(biāo)彈起時停止記錄。
10.根據(jù)權(quán)利要求7所 述的方法,其特征在于在記錄的過程中同時,程序定時從所述數(shù)組變量中獲取η條記錄,通過調(diào)用Flash的Socket接口發(fā)送消息到所述被同步網(wǎng)頁端, 并從數(shù)組中清除這η條記錄的過程為在記錄的過程中,網(wǎng)頁定時使用JavaScript從數(shù)組變量中獲取η條記錄,并使用JavaScript調(diào)用Flash接口并傳入所述η條記錄;Flash 使用XMLSocket類將傳遞過來的所述η條記錄組裝成消息發(fā)送到被同步網(wǎng)頁端;并使用 JavaScript從數(shù)組變量中清除這η條記錄。
全文摘要
本發(fā)明屬于網(wǎng)絡(luò)技術(shù)領(lǐng)域,具體涉及一種實(shí)現(xiàn)滾動條同步的方法,包括以下步驟用戶在網(wǎng)頁區(qū)域進(jìn)行操作,當(dāng)鼠標(biāo)按住滾動條并開始移動時,記錄所滾動區(qū)域滾動條的高度到數(shù)組變量中,當(dāng)鼠標(biāo)彈起時停止記錄,同時程序定時從數(shù)組變量中獲取n條記錄通過調(diào)用Flash的Socket接口發(fā)送到其它需要同步的網(wǎng)頁端,并從數(shù)組中清除這n條記錄,被同步網(wǎng)頁端收到消息,把滾動區(qū)域的滾動條高度值設(shè)置成對消息解析所得到的高度值,便實(shí)現(xiàn)滾動條的同步。此方法可快速對網(wǎng)頁中的滾動條進(jìn)行同步,具有很強(qiáng)的及時性、準(zhǔn)確性、高效性。
文檔編號G06F3/048GK102314471SQ20111006000
公開日2012年1月11日 申請日期2011年3月14日 優(yōu)先權(quán)日2010年9月17日
發(fā)明者胡加明 申請人:蘇州闊地網(wǎng)絡(luò)科技有限公司