本申請(qǐng)涉及計(jì)算機(jī)技術(shù)領(lǐng)域,尤其涉及一種網(wǎng)絡(luò)表格的處理方法及裝置。
背景技術(shù):
創(chuàng)建表格是目前常用的一種組織整理數(shù)據(jù)的方法,人們可以通過將數(shù)據(jù)做成表格的形式,達(dá)到整理數(shù)據(jù)、展示數(shù)據(jù)的目的。
隨著互聯(lián)網(wǎng)信息技術(shù)的不斷發(fā)展,用戶在運(yùn)用互聯(lián)網(wǎng)信息技術(shù)時(shí),會(huì)產(chǎn)生了大量的與用戶工作或者生活相關(guān)的數(shù)據(jù),例如用戶在瀏覽論壇時(shí)產(chǎn)生的數(shù)據(jù)、用戶在瀏覽購(gòu)物網(wǎng)站時(shí)產(chǎn)生的數(shù)據(jù)、用戶在使用遠(yuǎn)程辦公系統(tǒng)時(shí)產(chǎn)生的數(shù)據(jù),等等。為了可以以表格的形式,對(duì)上述在互聯(lián)網(wǎng)中產(chǎn)生的數(shù)據(jù)進(jìn)行整理、保存以及展示,產(chǎn)生了網(wǎng)絡(luò)表格(即,在線表格)這種新形式的表格。例如,公司的遠(yuǎn)程辦公系統(tǒng),客戶關(guān)系管理系統(tǒng)(Customer Relationship Management,CRM),內(nèi)容管理系統(tǒng)(Content Management System,CMS),等系統(tǒng)中,都會(huì)用到網(wǎng)絡(luò)表格。
網(wǎng)絡(luò)表格,主要是瀏覽器利用服務(wù)器發(fā)送的表格屬性信息渲染得到的,若服務(wù)器還向?yàn)g覽器發(fā)送了用于展示在單元格中的數(shù)據(jù),則瀏覽器在渲染網(wǎng)絡(luò)表格后,還可以將服務(wù)器發(fā)送的所述數(shù)據(jù)展示在網(wǎng)絡(luò)表格的單元格中。視頁(yè)面的用于顯示網(wǎng)絡(luò)表格的顯示區(qū)域和整個(gè)網(wǎng)絡(luò)表格完整顯示時(shí)需要占用的顯示區(qū)域的大小關(guān)系的不同,瀏覽器渲染并顯示在頁(yè)面中的網(wǎng)絡(luò)表格部分,可能是整個(gè)網(wǎng)絡(luò)表格,也可能是網(wǎng)絡(luò)表格的局部(比如一個(gè)包含20行20列的網(wǎng)絡(luò)表格的第1~10列和第1~10行等)。
現(xiàn)有技術(shù)中,當(dāng)生成的網(wǎng)絡(luò)表格尺寸較大,從而完整顯示網(wǎng)絡(luò)表格所需要的顯示區(qū)域大于頁(yè)面的用于顯示網(wǎng)絡(luò)表格的顯示區(qū)域時(shí),網(wǎng)絡(luò)表格無(wú)法完整地顯示在頁(yè)面中。在這樣的情況下,在用戶對(duì)頁(yè)面的表格進(jìn)行操作時(shí),如何對(duì)網(wǎng)絡(luò)表格的當(dāng)前已顯示在頁(yè)面中的表格元素(行和/或列),以及網(wǎng)絡(luò)表格的當(dāng)前還未顯示在頁(yè)面中的表格元素進(jìn)行顯示,以便用戶能夠?qū)Ρ炔榭串?dāng)前已顯示在頁(yè)面中的表格元素和待顯示在頁(yè)面中的表格元素,是目前亟待解決的問題。
技術(shù)實(shí)現(xiàn)要素:
本申請(qǐng)實(shí)施例提供一種網(wǎng)絡(luò)表格的處理方法,用以解決現(xiàn)有技術(shù)存在的如何在用戶對(duì)頁(yè)面的表格進(jìn)行操作時(shí),使得用戶能夠?qū)Ρ炔榭串?dāng)前已顯示的表格元素和待顯示的表格元素的問題。
本申請(qǐng)實(shí)施例還提供一種網(wǎng)絡(luò)表格的處理裝置,用以解決現(xiàn)有技術(shù)存在的如何在用戶對(duì)頁(yè)面的表格進(jìn)行操作時(shí),使得用戶能夠?qū)Ρ炔榭串?dāng)前已顯示的表格元素和待顯示的表格元素的問題。
本申請(qǐng)實(shí)施例采用下述技術(shù)方案:
一種網(wǎng)絡(luò)表格的處理方法,包括:
獲取針對(duì)頁(yè)面中顯示的網(wǎng)絡(luò)表格部分的操作指令;所述操作指令指示在頁(yè)面中顯示所述網(wǎng)絡(luò)表格的待顯示的表格元素;
根據(jù)所述操作指令,調(diào)整所述網(wǎng)絡(luò)表格中待顯示的表格元素的顯示尺寸,以及當(dāng)前已顯示的部分表格元素的顯示尺寸,以在當(dāng)前頁(yè)面進(jìn)行顯示。
一種網(wǎng)絡(luò)表格的處理裝置,包括:
操作指令獲取單元,用于獲取針對(duì)頁(yè)面中顯示的網(wǎng)絡(luò)表格部分的操作指令;所述操作指令指示在頁(yè)面中顯示所述網(wǎng)絡(luò)表格的待顯示的表格元素;
表格元素調(diào)整單元,用于根據(jù)所述操作指令,調(diào)整所述網(wǎng)絡(luò)表格中待顯示的表格元素的顯示尺寸,以及當(dāng)前已顯示的部分表格元素的顯示尺寸,以在當(dāng)前頁(yè)面進(jìn)行顯示。
本申請(qǐng)實(shí)施例采用的上述至少一個(gè)技術(shù)方案能夠達(dá)到以下有益效果:
由于在獲取到針對(duì)頁(yè)面中顯示的網(wǎng)絡(luò)表格部分的操作指令后,根據(jù)所述操作指令,通過調(diào)整頁(yè)面的表格中當(dāng)前已顯示的部分表格元素的顯示尺寸,和待顯示的表格元素的顯示尺寸,以在當(dāng)前頁(yè)面進(jìn)行顯示的方式,實(shí)現(xiàn)在不隱藏已顯示的表格元素的情況下,對(duì)所述當(dāng)前未顯示的表格元素進(jìn)行顯示,從而可以在用戶對(duì)頁(yè)面的表格進(jìn)行操作時(shí),使得頁(yè)面中既可以顯示當(dāng)前已顯示的表格元素,又能夠顯示待顯示的表格元素,方便用戶對(duì)比查看當(dāng)前已顯示的表格元素和待顯示的表格元素,從而解決了現(xiàn)有技術(shù)存在的如何在用戶對(duì)頁(yè)面的表格進(jìn)行操作時(shí),使得用戶能夠?qū)Ρ炔榭串?dāng)前已顯示的表格元素和待顯示的表格元素的問題。
附圖說明
此處所說明的附圖用來(lái)提供對(duì)本申請(qǐng)的進(jìn)一步理解,構(gòu)成本申請(qǐng)的一部分,本申請(qǐng)的示意性實(shí)施例及其說明用于解釋本申請(qǐng),并不構(gòu)成對(duì)本申請(qǐng)的不當(dāng)限定。在附圖中:
圖1為本申請(qǐng)實(shí)施例提供的一種網(wǎng)絡(luò)表格的處理方法的具體實(shí)現(xiàn)流程示意圖;
圖2為瀏覽器在接收針對(duì)頁(yè)面中顯示的網(wǎng)絡(luò)表格部分的操作指令前,利用服務(wù)器發(fā)送的表格屬性信息渲染得到并顯示的網(wǎng)絡(luò)表格的示意圖;
圖3為本申請(qǐng)實(shí)施例提供的一種網(wǎng)絡(luò)表格的設(shè)置鎖定面板的具體顯示樣式示意圖;
圖4為本申請(qǐng)實(shí)施例提供的一種判斷網(wǎng)絡(luò)表格是否支持表格元素鎖定功能的實(shí)現(xiàn)流程示意圖;
圖5瀏覽器在接收到針對(duì)頁(yè)面中顯示的網(wǎng)絡(luò)表格部分的操作指令前,根據(jù)被鎖定的表格元素col1、col9和col20在網(wǎng)絡(luò)表格中所處位置的信息顯示得到的表格元素的示意圖;
圖6為本申請(qǐng)實(shí)施例中調(diào)整未被鎖定的表格元素的寬度的實(shí)現(xiàn)流程示意圖;
圖7為本申請(qǐng)實(shí)施例中如圖5所示的表格元素發(fā)生變化量為0.5的寬度變化后的示意圖;
圖8為本申請(qǐng)實(shí)施例中如圖5所示的表格元素發(fā)生變化量為1的寬度變化后的示意圖;
圖9為本申請(qǐng)實(shí)施例中如圖5所示的表格元素發(fā)生變化量為10的寬度變化后的示意圖;
圖10本申請(qǐng)實(shí)施例提供的一種網(wǎng)絡(luò)表格的處理裝置的具體結(jié)構(gòu)示意圖。
具體實(shí)施方式
為使本申請(qǐng)的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合本申請(qǐng)具體實(shí)施例及相應(yīng)的附圖對(duì)本申請(qǐng)技術(shù)方案進(jìn)行清楚、完整地描述。顯然,所描述的實(shí)施例僅是本申請(qǐng)一部分實(shí)施例,而不是全部的實(shí)施例?;诒旧暾?qǐng)中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本申請(qǐng)保護(hù)的范圍。
以下結(jié)合附圖,詳細(xì)說明本申請(qǐng)各實(shí)施例提供的技術(shù)方案。
實(shí)施例1
本申請(qǐng)實(shí)施例提供了一種網(wǎng)絡(luò)表格的處理方法,用以解決現(xiàn)有技術(shù)存在的如何在用戶對(duì)頁(yè)面的表格進(jìn)行操作時(shí),使得用戶能夠?qū)Ρ炔榭串?dāng)前已顯示的表格元素和待顯示的表格元素的問題。
本申請(qǐng)實(shí)施例提供的網(wǎng)絡(luò)表格的處理方法的執(zhí)行主體,可以但不限于為手機(jī)、平板電腦、個(gè)人電腦(Personal Computer,PC)以及智能電視等終端設(shè)備。此外,該方法的執(zhí)行主體,也可以是安裝在終端設(shè)備的應(yīng)用程序(Application,APP)本身。
為便于描述,下文以該方法的執(zhí)行主體為終端上安裝的應(yīng)用程序?yàn)g覽器為例,對(duì)該方法的實(shí)施方式進(jìn)行介紹??梢岳斫猓摲椒ǖ膱?zhí)行主體為終端上安裝的應(yīng)用程序只是一種示例性的說明,并不應(yīng)理解為對(duì)該方法的限定。
該方法的具體實(shí)現(xiàn)流程示意圖如圖1所示,主要包括下述步驟:
步驟11,瀏覽器獲取針對(duì)頁(yè)面中顯示的網(wǎng)絡(luò)表格部分的操作指令;
其中,這里所述的操作指令,用于指示在頁(yè)面中顯示網(wǎng)絡(luò)表格的當(dāng)前未被顯示的表格元素。
所述網(wǎng)絡(luò)表格,是瀏覽器利用服務(wù)器發(fā)送的表格屬性信息渲染得到的。若服務(wù)器還向?yàn)g覽器發(fā)送了用于展示在單元格中的數(shù)據(jù),則瀏覽器在渲染網(wǎng)絡(luò)表格后,還可以將服務(wù)器發(fā)送的所述數(shù)據(jù)展示在網(wǎng)絡(luò)表格的單元格中。網(wǎng)絡(luò)表格部分,是指網(wǎng)絡(luò)表格的、顯示在頁(yè)面中的部分。由于頁(yè)面的用于顯示網(wǎng)絡(luò)表格的顯示區(qū)域和整個(gè)網(wǎng)絡(luò)表格完整顯示時(shí)需要占用的顯示區(qū)域的大小關(guān)系的不同,瀏覽器渲染并顯示在頁(yè)面中的網(wǎng)絡(luò)表格部分,可能是整個(gè)網(wǎng)絡(luò)表格,也可能是網(wǎng)絡(luò)表格的局部(比如一個(gè)包含20行20列的網(wǎng)絡(luò)表格的第1~10列和第1~10行等)。本申請(qǐng)實(shí)施例中,主要是針對(duì)網(wǎng)絡(luò)表格不能完整顯示在所述顯示區(qū)域的情況提出的解決方案。
上述表格屬性信息,一般是指表格每列的寬度、表格每行的高度、表格的行數(shù)、表格的列數(shù)、表格的高度、表格的寬度、表格中行與行之間的相對(duì)位置關(guān)系以及表格中列與列之間的相對(duì)位置關(guān)系,等等。
所述操作指令,可以是用戶在瀏覽器的操作界面上通過滑動(dòng)操作觸發(fā)的,當(dāng)用戶使用手機(jī)或者平板電腦瀏覽網(wǎng)絡(luò)表格時(shí),所述滑動(dòng)操作一般可以是指用戶的滑動(dòng)手勢(shì)操作;而當(dāng)用戶使用電腦瀏覽網(wǎng)絡(luò)表格時(shí),所述滑動(dòng)操作可以是用戶滑動(dòng)鼠標(biāo)滾輪的操作。
為便于理解本方案,以下結(jié)合附圖,對(duì)瀏覽器如何顯示并處理網(wǎng)絡(luò)表格進(jìn)行說明。
如圖2所示,為瀏覽器在接收針對(duì)頁(yè)面中顯示的網(wǎng)絡(luò)表格部分的操作指令前,利用服務(wù)器發(fā)送的表格屬性信息渲染得到并顯示的網(wǎng)絡(luò)表格。假設(shè)網(wǎng)絡(luò)表格共有50列,而按照每列的默認(rèn)寬度(假設(shè)為a0),頁(yè)面中用于顯示網(wǎng)絡(luò)表格的顯示區(qū)域(后稱顯示區(qū)域)最多僅能顯示10列,則瀏覽器會(huì)按照默認(rèn)的“優(yōu)先顯示在網(wǎng)絡(luò)表格中排列靠前的列”的方式,渲染并顯示網(wǎng)絡(luò)表格的第1列~第10列,即圖2中的col1~col10。為便于描述,本申請(qǐng)實(shí)施例中將如圖1所示的狀態(tài),稱為初始狀態(tài)。需要說明的是,為保持說明書附圖的清晰和簡(jiǎn)潔,說明書附圖中沒有畫出顯示在網(wǎng)絡(luò)表格中的數(shù)據(jù),本領(lǐng)域技術(shù)人員可以理解,圖2中的col1~col10中實(shí)際上是可以存在數(shù)據(jù)的。
本申請(qǐng)實(shí)施例中,假設(shè)在初始狀態(tài)下,瀏覽器接收到針對(duì)頁(yè)面中顯示的網(wǎng)絡(luò)表格的表格元素鎖定指令,則瀏覽器可以將所述鎖定指令所對(duì)應(yīng)的表格元素,確定為被鎖定的表格元素,并對(duì)鎖定指令對(duì)應(yīng)的表格元素在網(wǎng)絡(luò)表格中所處位置的信息進(jìn)行保存。
其中,所述表格元素,是指表格中的一列(如圖2中的col1或col10等,每一列都是一個(gè)表格元素)或一行單元格。當(dāng)表格元素是由表格的一列單元格構(gòu)成時(shí),可以將該表格元素稱為列表格元素;而當(dāng)表格元素是由表格的一行單元格構(gòu)成時(shí),可以將該表格元素稱為行表格元素。需要說明的是,當(dāng)表格的單元格中包含有數(shù)據(jù)時(shí),則此時(shí)表格元素是由表格中至少一列(或者一行)單元格以及所述至少一列(或者一行)單元格中的數(shù)據(jù)構(gòu)成。
列表格元素的寬度,為該列單元格的寬度(如圖2中的col1的寬度,或者col2的寬度等);行表格元素的高度,為該行的高度。
所述表格元素鎖定指令,是用于告知瀏覽器被鎖定的表格元素具體是哪些表格元素的指令。比如,用戶若針對(duì)某列表格元素(如圖2中的col1)進(jìn)行雙擊,則若預(yù)先約定了表格元素鎖定指令為雙擊表格元素所觸發(fā)的指令,則對(duì)col1進(jìn)行的該雙擊操作所觸發(fā)的指令可以視為表格元素鎖定指令,根據(jù)該表格元素鎖定指令,瀏覽器可以確定被鎖定的表格元素包括col1,從而對(duì)col1在網(wǎng)絡(luò)表格中所處位置的信息進(jìn)行保存。本申請(qǐng)實(shí)施例中,瀏覽器可以在接收到鎖定模式切換指令后,進(jìn)入到鎖定模式;在鎖定模式下接收到的針對(duì)表格元素的操作指令(如雙擊或單擊表格元素等),可視為表格元素鎖定指令。其中,鎖定模式切換指令,比如可以是用戶對(duì)網(wǎng)絡(luò)表格的表頭上設(shè)置的控件(如顯示有“鎖定表格”的按鈕等)進(jìn)行操作(如單擊)而發(fā)出的。本申請(qǐng)實(shí)施例中,在該控件被操作后,瀏覽器也可以顯示如圖3所示的懸浮窗(也稱表格元素鎖定設(shè)置面板),該懸浮窗中包括用于接收用戶設(shè)置的被鎖定的列和行的編號(hào)的輸入框,用戶通過在這些輸入框中輸入期望鎖定的列和行的編號(hào),并點(diǎn)擊“提交”按鈕,可以觸發(fā)表格元素鎖定指令,該指令中包含所述期望鎖定的列和行的編號(hào)。該編號(hào),一般就是表格元素在網(wǎng)絡(luò)表格中的排列位置(也稱坐標(biāo))的信息,也即表格元素在網(wǎng)絡(luò)表格中所處位置的信息。本申請(qǐng)實(shí)施例中,如圖4所示,瀏覽器在所述控件被操作后,可以先判斷對(duì)應(yīng)于該網(wǎng)絡(luò)表格的html文件中,是否存在用于實(shí)現(xiàn)保存被鎖定的表格元素在網(wǎng)絡(luò)表格中所處位置的信息的程序,也即判斷網(wǎng)絡(luò)表格是否支持表格元素鎖定功能,若是,展示表格元素鎖定設(shè)置面板,否則結(jié)束流程。
如上所述,所述表格元素在網(wǎng)絡(luò)表格中所處位置的信息,一般是指表格元素作為列(或者行),在網(wǎng)絡(luò)表格中的排列位置(也稱坐標(biāo))的信息。一般說來(lái),不同的表格元素在網(wǎng)絡(luò)表格中所處位置的信息不同。例如,假設(shè)某網(wǎng)絡(luò)表格有3行3列,每一行以及每一列,都是一個(gè)表格元素,則第1行表格元素在網(wǎng)絡(luò)表格中所處位置,為“第1行”,而第2行表格元素在網(wǎng)絡(luò)表格中所處位置,為“第2行”,依此類推。
本申請(qǐng)實(shí)施例中,假設(shè)在如圖2所示的初始狀態(tài)下,瀏覽器接收到用于告知被鎖定的表格元素為col1、col9和col20的表格元素鎖定指令,則瀏覽器對(duì)該指令對(duì)應(yīng)的表格元素(即被鎖定的表格元素)在網(wǎng)絡(luò)表格中所處位置的信息進(jìn)行保存。被鎖定的表格元素的信息,可以保存在瀏覽器本地,或者也可以發(fā)送給服務(wù)器進(jìn)行保存。
本申請(qǐng)實(shí)施例中,除了可以保存被鎖定的表格元素在網(wǎng)絡(luò)表格中所處位置的信息外,瀏覽器在首次完成對(duì)網(wǎng)絡(luò)表格的渲染與顯示而進(jìn)入如圖2所示的初始狀態(tài)后,還可以運(yùn)行“自由鎖定功能程序”,以便對(duì)網(wǎng)絡(luò)表格的指定屬性信息進(jìn)行保存。該自由鎖定功能程序的主要功能,在于將網(wǎng)絡(luò)表格的指定屬性信息保存到瀏覽器本地。自由鎖定功能程序,可以是寫在用于顯示網(wǎng)絡(luò)表格的頁(yè)面對(duì)應(yīng)的html文件中的一段程序代碼。瀏覽器在接收到服務(wù)器發(fā)送的該html文件,并根據(jù)該文件首次完成對(duì)網(wǎng)絡(luò)表格的渲染后,瀏覽器會(huì)自動(dòng)對(duì)該自由鎖定功能程序進(jìn)行初始化(即將該程序加載到內(nèi)存中),并運(yùn)行。
其中,這里所說的網(wǎng)絡(luò)表格的指定屬性信息,包括在初始化狀態(tài)下在顯示區(qū)域內(nèi)顯示的所有表格元素的總寬度和總高度、網(wǎng)絡(luò)表格各列的默認(rèn)寬度和各行的默認(rèn)高度,以及,網(wǎng)絡(luò)表格包含的各個(gè)表格元素在網(wǎng)絡(luò)表格中所處位置的信息。為便于描述,本申請(qǐng)實(shí)施例中,假設(shè)各列的默認(rèn)寬度相等,均為a0,此外,假設(shè)各行的默認(rèn)高度相等。
需要說明的是,在實(shí)際應(yīng)用中,用戶有可能會(huì)根據(jù)自身需求,刪除或增加表格元素,或者也會(huì)調(diào)整表格元素的排列順序。在這樣的情況下,由于用戶對(duì)于表格元素的刪除、增加或排列順序調(diào)整操作,會(huì)引起表格元素在網(wǎng)絡(luò)表格中所處位置的變化,因此,本申請(qǐng)實(shí)施例中,瀏覽器在監(jiān)測(cè)到用戶對(duì)表格元素進(jìn)行刪除或增加后,可以再次運(yùn)行自由鎖定功能程序,以實(shí)現(xiàn)對(duì)已保存的所述指定的屬性信息中的“網(wǎng)絡(luò)表格包含的各個(gè)表格元素在網(wǎng)絡(luò)表格中當(dāng)前所處位置的信息(包括被鎖定的表格元素在網(wǎng)絡(luò)表格中所處位置的信息)”進(jìn)行更新。比如,若刪除了col7,則將col8在網(wǎng)絡(luò)表格中當(dāng)前所處位置的信息由8,調(diào)整為7,從而col8變化為新的col7;將col9在網(wǎng)絡(luò)表格中當(dāng)前所處位置的信息由9,調(diào)整為8,從而col9變化為新的col8,以此類推。特別地,若用戶對(duì)于表格元素的刪除操作,導(dǎo)致了顯示區(qū)域內(nèi)顯示的表格元素的總寬度(或總高度)發(fā)生變化,則可以對(duì)保存的指定的屬性信息中的“總寬度(或總高度)”進(jìn)行更新。為便于描述,后文以用戶沒有執(zhí)行表格元素的增、刪或改的操作為例,對(duì)本申請(qǐng)實(shí)施例提供的方法進(jìn)行介紹。
本申請(qǐng)實(shí)施例中,假設(shè)在如圖2所示的初始狀態(tài)下,瀏覽器通過運(yùn)行自由鎖定功能程序,實(shí)現(xiàn)將網(wǎng)絡(luò)表格的屬性信息保存到瀏覽器本地,并且,響應(yīng)于表格元素鎖定指令,對(duì)被鎖定的表格元素col1、col9和col20在網(wǎng)絡(luò)表格中所處位置的信息進(jìn)行了保存,那么,瀏覽器可以重新對(duì)顯示區(qū)域內(nèi)的表格元素進(jìn)行渲染和顯示,從而使得顯示區(qū)域顯示如圖5所示的表格元素。為便于描述,后文將瀏覽器顯示如圖5所示的表格元素的狀態(tài),稱為第一狀態(tài)。
本申請(qǐng)實(shí)施例中,瀏覽器從初始狀態(tài)切換為第一狀態(tài)的過程,具體可以包括下述步驟:
步驟一、瀏覽器在保存被鎖定的表格元素col1、col9和col20在網(wǎng)絡(luò)表格中所處位置的信息,以及通過運(yùn)行自由鎖定功能程序,實(shí)現(xiàn)將網(wǎng)絡(luò)表格的指定屬性信息保存到瀏覽器本地后,從保存該些信息的存儲(chǔ)空間中,獲取保存的被鎖定的表格元素在網(wǎng)絡(luò)表格中所處位置的信息,以及保存的初始化狀態(tài)下在顯示區(qū)域內(nèi)顯示的所有表格元素的總寬度和總高度、網(wǎng)絡(luò)表格各列的默認(rèn)寬度和各行的默認(rèn)高度。
需要說明的是,被鎖定的表格元素col1、col9和col20在網(wǎng)絡(luò)表格中所處位置的信息,一般說來(lái),會(huì)包含兩方面的信息:用以表征被鎖定的表格元素的類型為行還是列的類型信息,以及表格元素在網(wǎng)絡(luò)表格中的編號(hào)的信息。比如,以col1為例,col1在網(wǎng)絡(luò)表格中所處位置的信息,為“第1列”。
步驟二、瀏覽器根據(jù)獲取到的被鎖定的表格元素col1、col9和col20在網(wǎng)絡(luò)表格中所處位置的信息“第1列”、“第9列”和“第20列”,以及初始化狀態(tài)下在顯示區(qū)域內(nèi)顯示的所有表格元素的總寬度、網(wǎng)絡(luò)表格各列的默認(rèn)寬度,以及網(wǎng)絡(luò)表格包含的各個(gè)表格元素在網(wǎng)絡(luò)表格中所處位置的信息,確定目標(biāo)信息。該些目標(biāo)信息包括:在第一狀態(tài)下的未被鎖定的表格元素的顯示尺寸,在第一狀態(tài)下的被鎖定的表格元素的顯示位置,以及,在第一狀態(tài)下未被鎖定的表格元素和鎖定的表格元素的顯示位置。
具體而言,假設(shè)網(wǎng)絡(luò)表格各列的默認(rèn)寬度均為“1”,初始化狀態(tài)下在顯示區(qū)域內(nèi)顯示的所有表格元素的總寬度為“10”,則根據(jù)被鎖定的表格元素col1、col9和col20在網(wǎng)絡(luò)表格中所處位置的信息,可以確定被鎖定的表格元素中,相距網(wǎng)絡(luò)表格左側(cè)最近的表格元素(col1)和相距網(wǎng)絡(luò)表格右側(cè)最近的表格元素(col20)在網(wǎng)絡(luò)表格中所處位置(坐標(biāo))之差的絕對(duì)值=|20-1|=19。由于19大于所述總寬度10,因此,可以確定在第一狀態(tài)下顯示在顯示區(qū)域最左側(cè)的表格元素為col1,而在第一狀態(tài)下顯示在顯示區(qū)域最右側(cè)的表格元素為col20,這樣就確定了col1和col20的顯示位置。
至于col9的顯示位置,由于:1、在第一狀態(tài)下,被鎖定的表格元素的寬度之和+未被鎖定的表格元素的寬度之和=初始化狀態(tài)下在顯示區(qū)域內(nèi)顯示的所有表格元素的總寬度;2、col9在網(wǎng)絡(luò)表格中所處位置與顯示在顯示區(qū)域最左側(cè)的表格元素col1在網(wǎng)絡(luò)表格中所處位置之差的絕對(duì)值=|9-1|=8=所述總寬度10-(col1的默認(rèn)寬度+col20的默認(rèn)寬度)。因此可以確定,在第一狀態(tài)下,在col1右側(cè),可以顯示網(wǎng)絡(luò)表格中位于col1和col9之間的表格元素col2~col8,使得所述總寬度=被鎖定的表格元素col1、col9、col20的總寬度“3”+未被鎖定的表格元素col2至col8的總寬度“7”。
步驟三:瀏覽器根據(jù)確定出的上述目標(biāo)信息,渲染并顯示第一狀態(tài)下的網(wǎng)絡(luò)表格,顯示結(jié)果如圖5所示。
本申請(qǐng)實(shí)施例中,所述的針對(duì)頁(yè)面中顯示的網(wǎng)絡(luò)表格部分的操作指令,假設(shè)是在如圖5所示的第一狀態(tài)下接收到的,從而執(zhí)行下述步驟12。
步驟12,瀏覽器根據(jù)所述操作指令,調(diào)整所述網(wǎng)絡(luò)表格中待顯示的表格元素的顯示尺寸,以及當(dāng)前已顯示的至少部分表格元素的顯示尺寸,以在當(dāng)前頁(yè)面進(jìn)行顯示。
本申請(qǐng)實(shí)施例中,所述網(wǎng)絡(luò)表格中待顯示的表格元素,是指網(wǎng)絡(luò)表格中的、當(dāng)前還沒有顯示在步驟11中所述的網(wǎng)絡(luò)表格部分中的表格元素。待顯示的表格元素,主要是未被鎖定的表格元素。
所述當(dāng)前已顯示的至少部分表格元素,一般是指當(dāng)前已顯示的至少部分未鎖定的表格元素。
表格元素的顯示尺寸,是指表格元素在被顯示時(shí)所具備的顯示尺寸(即實(shí)際的顯示尺寸),比如顯示寬度(實(shí)際的顯示寬度),或者顯示高度(實(shí)際的顯示高度)。本申請(qǐng)實(shí)施例中,表格元素還可以具備另一尺寸,稱為默認(rèn)的尺寸,如默認(rèn)寬度,或者默認(rèn)高度。在對(duì)表格元素進(jìn)行顯示時(shí),表格元素的顯示尺寸,有可能與默認(rèn)的尺寸不相同。
此外,步驟12中所說的“以在當(dāng)前頁(yè)面進(jìn)行顯示”,是指在當(dāng)前頁(yè)面顯示網(wǎng)絡(luò)表格中待顯示的表格元素,以及所述當(dāng)前已顯示的至少部分表格元素。
以下以所述針對(duì)頁(yè)面中顯示的網(wǎng)絡(luò)表格部分的操作指令為滑動(dòng)操作指令為例,介紹步驟12的具體實(shí)現(xiàn)方式。瀏覽器在所述滑動(dòng)操作指令對(duì)應(yīng)的滑動(dòng)操作結(jié)束前,可以根據(jù)滑動(dòng)操作指令,對(duì)網(wǎng)絡(luò)表格進(jìn)行重新渲染與顯示。
比如,在滑動(dòng)操作指令對(duì)應(yīng)的滑動(dòng)操作結(jié)束前,瀏覽器可以以5ms為周期,周期性地進(jìn)行網(wǎng)絡(luò)表格的重新渲染與顯示。其中,針對(duì)由用戶的滑動(dòng)手勢(shì)操作觸發(fā)所述滑動(dòng)操作指令的情況而言,這里所說的滑動(dòng)操作指令對(duì)應(yīng)的滑動(dòng)操作結(jié)束,一般是指用戶的手指離開觸摸屏;針對(duì)由鼠標(biāo)滾輪觸發(fā)所述滑動(dòng)操作指令的情況而言,這里所說的滑動(dòng)操作指令對(duì)應(yīng)的滑動(dòng)操作結(jié)束,一般是指光標(biāo)離開網(wǎng)絡(luò)表格的滑塊。
當(dāng)網(wǎng)絡(luò)表格中既包含被鎖定的表格元素,又包含未被鎖定的表格元素時(shí),為了在渲染網(wǎng)絡(luò)表格時(shí),能夠渲染出被鎖定的表格元素并進(jìn)行顯示,以便用戶方便地對(duì)被鎖定的表格元素進(jìn)行查看,本申請(qǐng)實(shí)施例中,在接收到所述滑動(dòng)操作指令后,可以獲取保存的被鎖定的表格元素在網(wǎng)絡(luò)表格中所處位置的信息,以便確定渲染的目標(biāo)對(duì)象。
本申請(qǐng)實(shí)施例中,在所述滑動(dòng)操作結(jié)束前,根據(jù)保存的被鎖定的表格元素在網(wǎng)絡(luò)表格中所處的位置的信息,可以將被鎖定的表格元素(可以是部分被鎖定的表格元素,也可以是全部被鎖定的表格元素),固定顯示在指定的顯示位置?;蛘?,在所述滑動(dòng)操作結(jié)束前,也可以隨著所述滑動(dòng)操作指令對(duì)應(yīng)的操作點(diǎn)的位置變化,調(diào)整所述被鎖定的表格元素(可以是部分被鎖定的表格元素,也可以是全部被鎖定的表格元素)的顯示位置,此外,調(diào)整未被鎖定的表格元素的顯示尺寸。這里所說的未被鎖定的表格元素,包括待顯示的未被所鎖定的表格元素。當(dāng)當(dāng)前已顯示的表格元素中,既包含被鎖定的表格元素,又包含未被鎖定的表格元素時(shí),這里所說的未被鎖定的表格元素,還可以包括當(dāng)前已顯示、且被鎖定的表格元素。
針對(duì)如何調(diào)整被鎖定的表格元素的顯示位置而言,舉例來(lái)說,比如當(dāng)所述滑動(dòng)操作對(duì)應(yīng)的滑動(dòng)方向?yàn)橛勺笾劣一驈挠抑磷?,且被鎖定的列表格元素至少有三個(gè),且被鎖定的列表格元素中分別距離網(wǎng)絡(luò)表格左側(cè)和右側(cè)最近的列表格元素在網(wǎng)絡(luò)表格中所處位置之間的距離,不小于頁(yè)面中最多能夠顯示的列表格元素的最大數(shù)量時(shí),根據(jù)保存的被鎖定的表格元素在網(wǎng)絡(luò)表格中所處位置的信息,從被鎖定的類型為列的表格元素中,確定距離網(wǎng)絡(luò)表格左側(cè)最近的被鎖定的網(wǎng)絡(luò)表格(如圖5所示的col1)和距離網(wǎng)絡(luò)表格右側(cè)最近的被鎖定的表格元素(如圖5所示的col20);在所述滑動(dòng)操作結(jié)束前,將距離網(wǎng)絡(luò)表格左側(cè)最近的被鎖定的表格元素,作為左側(cè)第一列表格元素進(jìn)行顯示,將距離網(wǎng)絡(luò)表格右側(cè)最近的被鎖定的表格元素,作為右側(cè)第一列表格元素進(jìn)行顯示,以及,隨著所述滑動(dòng)操作指令對(duì)應(yīng)的操作點(diǎn)的位置變化,根據(jù)未被鎖定的表格元素的顯示尺寸的變化量,調(diào)整除所述距離網(wǎng)絡(luò)表格左側(cè)最近的被鎖定的網(wǎng)絡(luò)表格(如圖5所示的col1)和距離網(wǎng)絡(luò)表格右側(cè)最近的被鎖定的表格元素(如圖5所示的col20)外的其他被鎖定的表格元素(如圖5所示的col9)的顯示位置。
類似地,而當(dāng)所述滑動(dòng)方向?yàn)橛缮现料禄驈南轮辽?,且被鎖定的行表格元素至少有三個(gè),且被鎖定的行表格元素中分別距離網(wǎng)絡(luò)表格上側(cè)和下側(cè)最近的行表格元素在網(wǎng)絡(luò)表格中所處位置之間的距離,不小于頁(yè)面中最多能夠顯示的行表格元素的最大數(shù)量時(shí),根據(jù)保存的被鎖定的表格元素在網(wǎng)絡(luò)表格中所處位置的信息,從被鎖定的類型為列的表格元素中,確定距離網(wǎng)絡(luò)表格上側(cè)最近的被鎖定的網(wǎng)絡(luò)表格和距離網(wǎng)絡(luò)表格下側(cè)最近的被鎖定的表格元素;在所述滑動(dòng)操作結(jié)束前,將距離網(wǎng)絡(luò)表格上側(cè)最近的被鎖定的表格元素,作為上側(cè)第一行表格元素進(jìn)行顯示,將距離網(wǎng)絡(luò)表格下側(cè)最近的被鎖定的表格元素,作為下側(cè)第一行表格元素進(jìn)行顯示,以及,隨著所述滑動(dòng)操作指令對(duì)應(yīng)的操作點(diǎn)的位置變化,根據(jù)未被鎖定的表格元素的顯示尺寸的變化量,調(diào)整除所述距離網(wǎng)絡(luò)表格上側(cè)最近的被鎖定的網(wǎng)絡(luò)表格和距離網(wǎng)絡(luò)表格下側(cè)最近的被鎖定的表格元素外的其他被鎖定的表格元素的顯示位置。
以下主要以所述滑動(dòng)操作對(duì)應(yīng)的滑動(dòng)方向?yàn)橛勺笾劣?,被鎖定的表格元素為如圖5所示的col1、col9和col20為例,說明如何調(diào)整除所述距離網(wǎng)絡(luò)表格左側(cè)最近的被鎖定的網(wǎng)絡(luò)表格col1和距離網(wǎng)絡(luò)表格右側(cè)最近的被鎖定的表格元素col20外的其他被鎖定的表格元素col9的顯示位置。其他的情況——包括所述滑動(dòng)操作對(duì)應(yīng)的滑動(dòng)方向?yàn)橛捎抑磷螅蛘?,所述滑?dòng)操作對(duì)應(yīng)的滑動(dòng)方向?yàn)橛缮现料禄蛴上轮辽系那闆r可以以此類推。
由于col9的顯示位置,主要是在確定未被鎖定的表格元素的顯示位置后可以自動(dòng)確定的,因此,以下先介紹在所述滑動(dòng)操作指令對(duì)應(yīng)的滑動(dòng)操作結(jié)束前,如何隨著所述滑動(dòng)操作指令對(duì)應(yīng)的操作點(diǎn)的位置變化,調(diào)整未被鎖定的表格元素(包括已顯示的未被鎖定的表格元素,和待顯示的未被鎖定的表格元素)的顯示尺寸。
以下介紹如何調(diào)整未被鎖定的表格元素的顯示尺寸:
具體而言,當(dāng)所述滑動(dòng)方向?yàn)橛勺笾劣視r(shí),若所述位置變化量不大于當(dāng)前已顯示在最左側(cè)的未被鎖定的表格元素的當(dāng)前顯示寬度,則將所述已顯示在最左側(cè)的未被鎖定的表格元素的顯示寬度,調(diào)整為所述已顯示在最左側(cè)的未被鎖定的表格元素的當(dāng)前顯示寬度與所述位置變化量的差值,并,將當(dāng)前已顯示在最右側(cè)的未被鎖定的表格元素的顯示寬度,調(diào)整為所述當(dāng)前已顯示在最右側(cè)的未被鎖定的表格元素的當(dāng)前顯示寬度與所述位置變化量的和值;
當(dāng)所述滑動(dòng)方向?yàn)橛捎抑磷髸r(shí),若所述位置變化量不大于當(dāng)前已顯示在最右側(cè)的未被鎖定的表格元素的當(dāng)前顯示寬度,則將所述已顯示在最右側(cè)的未被鎖定的表格元素的顯示寬度,調(diào)整為所述已顯示在最右側(cè)的未被鎖定的表格元素的當(dāng)前顯示寬度與所述位置變化量的差值,并,將當(dāng)前已顯示在最左側(cè)的未被鎖定的表格元素的顯示寬度,調(diào)整為所述當(dāng)前已顯示在最左側(cè)的未被鎖定的表格元素的當(dāng)前顯示寬度與所述位置變化量的和值;
當(dāng)所述滑動(dòng)方向?yàn)橛缮现料聲r(shí),若所述位置變化量不大于當(dāng)前已顯示在最上側(cè)的未被鎖定的表格元素的當(dāng)前顯示高度,則將所述已顯示在最上側(cè)的未被鎖定的表格元素的顯示高度,調(diào)整為所述已顯示在最上側(cè)的未被鎖定的表格元素的當(dāng)前顯示高度與所述位置變化量的差值,并,將當(dāng)前已顯示在最下側(cè)的未被鎖定的表格元素的顯示高度,調(diào)整為所述當(dāng)前已顯示在最下側(cè)的未被鎖定的表格元素的當(dāng)前顯示高度與所述位置變化量的和值;
當(dāng)所述滑動(dòng)方向?yàn)橛上轮辽蠒r(shí),若所述位置變化量不大于當(dāng)前已顯示在最下側(cè)的未被鎖定的表格元素的當(dāng)前顯示高度,則將所述已顯示在最下側(cè)的未被鎖定的表格元素的顯示高度,調(diào)整為所述已顯示在最下側(cè)的未被鎖定的表格元素的當(dāng)前顯示高度與所述位置變化量的差值,并,將當(dāng)前已顯示在最上側(cè)的未被鎖定的表格元素的顯示高度,調(diào)整為所述當(dāng)前已顯示在最上側(cè)的未被鎖定的表格元素的當(dāng)前顯示高度與所述位置變化量的和值。
以未被鎖定的表格元素為行表格元素為例,本申請(qǐng)實(shí)施例中,未被鎖定的表格元素的顯示尺寸的變化方式如下:
在網(wǎng)絡(luò)表格沿水平方向向右滾動(dòng)的過程中,處于網(wǎng)絡(luò)表格的顯示區(qū)域左邊首列的未被鎖定的表格元素的寬度將減少,處于網(wǎng)絡(luò)表格的顯示區(qū)域右邊首列的未被鎖定的表格元素的寬度會(huì)增加。為了達(dá)到該目標(biāo),瀏覽器可以執(zhí)行(比如可以通過運(yùn)行插件的方式來(lái)執(zhí)行)如圖6所示的下述步驟:
步驟a,瀏覽器在如圖5所示的第一狀態(tài)下,接收到觸發(fā)網(wǎng)絡(luò)表格向右滾動(dòng)X個(gè)單位距離的滾動(dòng)顯示指令后,判斷當(dāng)前處于用于顯示網(wǎng)絡(luò)表格的表格的顯示區(qū)域(后稱顯示區(qū)域)左邊首列的未被鎖定的表格元素(如圖5所示的col2)的當(dāng)前顯示寬度(假設(shè)記為a1)是否大于或等于X,當(dāng)判斷結(jié)果為是時(shí),執(zhí)行步驟b,當(dāng)判斷結(jié)果為否時(shí),執(zhí)行步驟c;
步驟b,瀏覽器確定col2的寬度值由a1變化為a1-X,并執(zhí)行步驟f;
瀏覽器此時(shí)確定出的col2的寬度值a1-X,為將要對(duì)col2采用的顯示寬度的值。具體而言,可以按照確定出的col2的寬度值a1-X,重新渲染col2并顯示,以使得col2在顯示時(shí)的顯示寬度為a1-X。col2中的數(shù)據(jù),可以隨著col2寬度的變窄而相應(yīng)變小,以保證能夠完整顯示在col2中。
若假設(shè)col2的寬度值a1為如圖5所示的1,則當(dāng)X為0.5時(shí),瀏覽器可以確定col2的寬度值由1變化為1-0.5,如圖7所示。如圖7所示的該狀態(tài),可以稱為第二狀態(tài)。
步驟c,瀏覽器確定col2的寬度值由a1變化為0,然后執(zhí)行步驟d;
瀏覽器此時(shí)確定出的col2的寬度值0,為將要對(duì)col2采用的顯示寬度的值。
步驟d,瀏覽器判斷當(dāng)前處于所述顯示區(qū)域內(nèi)的、與col2相鄰且位于col2右邊的未被鎖定的表格元素(如圖5所示的col3)的當(dāng)前顯示寬度,是否大于或等于“X-當(dāng)前已經(jīng)確定出的顯示區(qū)域中除col3外的其他未被鎖定的表格元素減少的寬度總量”,當(dāng)判斷結(jié)果為是時(shí),執(zhí)行步驟e,當(dāng)判斷結(jié)果為否時(shí),則繼續(xù)針對(duì)col3執(zhí)行與步驟c和步驟d類似的步驟,即:
瀏覽器確定col3的寬度值由col3當(dāng)前顯示寬度的值變化為0,然后,判斷當(dāng)前處于所述顯示區(qū)域內(nèi)的與col3相鄰且位于col3右邊的未被鎖定的表格元素(比如是如圖5所示的col4)的當(dāng)前顯示寬度是否大于或等于(X-顯示區(qū)域中當(dāng)前已經(jīng)確定出的除col4列外的其他未被鎖定的表格元素減少的寬度總量),并在判斷結(jié)果為是時(shí),執(zhí)行與步驟e類似的步驟,在判斷結(jié)果為否時(shí),則繼續(xù)針對(duì)col4執(zhí)行與步驟c和步驟d類似的步驟。以此類推,直至滿足某列的當(dāng)前顯示寬度大于或等于“X-顯示區(qū)域中當(dāng)前已經(jīng)確定出的除col3外的其他未被鎖定的表格元素減少的寬度總量=0”,則可以針對(duì)所述某列執(zhí)行與步驟e類似的步驟。
若假設(shè)col3的當(dāng)前顯示寬度為各列統(tǒng)一的默認(rèn)寬度a0(a0>a1>0),那么,由于顯示區(qū)域中當(dāng)前已經(jīng)確定出的除col3外的其他未被鎖定的表格元素減少的寬度總量,就是col2的寬度值的變化量a1,因此,X-顯示區(qū)域中當(dāng)前已經(jīng)確定出的除col3外的其他未被鎖定的表格元素減少的寬度總量=X-a1。若假設(shè)a0>X-a1,那么在執(zhí)行步驟d后得到判斷結(jié)果為是;而若假設(shè)a0≤X-a1,則在執(zhí)行步驟d后可以得到判斷結(jié)果為否。
為便于描述,本申請(qǐng)實(shí)施例假設(shè)col3的當(dāng)前顯示寬度為a0,且a0>X-a1,從而后續(xù)可以執(zhí)行步驟e。
步驟e,瀏覽器確定col3的寬度值由當(dāng)前顯示寬度a0,減少為“a0-(X-顯示區(qū)域中當(dāng)前已經(jīng)確定出的除col3外的其他未被鎖定的表格元素減少的寬度總量)”,并執(zhí)行步驟f;
瀏覽器此時(shí)確定出的col3的寬度值“a0-(X-顯示區(qū)域中當(dāng)前已經(jīng)確定出的除col3外的其他未被鎖定的表格元素減少的寬度總量)”,為將要對(duì)col3采用的顯示寬度的值。
步驟f,瀏覽器判斷處于所述顯示區(qū)域右邊首列未被鎖定的表格元素(假設(shè)為如圖5所示的col1)的當(dāng)前顯示寬度a2與X之和,是否小于表格元素的默認(rèn)寬度a0,當(dāng)判斷結(jié)果為是時(shí),執(zhí)行步驟g,當(dāng)判斷結(jié)果為否時(shí),執(zhí)行步驟h;
步驟g,瀏覽器確定col10的寬度值由a2變化為a2+X;
瀏覽器此時(shí)確定出的col10列的寬度值a2+X,為將要對(duì)c8列采用的顯示寬度的值。
若假設(shè)col10的寬度值a2為如圖5所示的0,則當(dāng)X為0.5時(shí),瀏覽器可以確定col10的寬度值由0變化為0+0.5,如圖7所示。
步驟h,瀏覽器確定col10列的寬度值由a2變化為a0,并執(zhí)行步驟i;
瀏覽器此時(shí)確定出的col10列的寬度值a0,為將要對(duì)col10列采用的顯示寬度的值。
步驟i,瀏覽器判斷當(dāng)前處于所述顯示區(qū)域內(nèi)的、與col10相鄰且位于col10列左邊的未被鎖定的表格元素(如圖5所示的col8)的當(dāng)前顯示寬度是否滿足:col8的當(dāng)前顯示寬度+(X-顯示區(qū)域中當(dāng)前已經(jīng)確定出的除col8外的其他未被鎖定的表格元素增加的寬度總量)≤a0,若滿足,則執(zhí)行步驟j,當(dāng)判斷結(jié)果為否時(shí),則繼續(xù)針對(duì)col8執(zhí)行與步驟h和步驟i類似的步驟,即:
瀏覽器確定col8的寬度值由col8當(dāng)前顯示寬度的值變化為a0,然后,判斷當(dāng)前處于所述顯示區(qū)域內(nèi)的與col8相鄰且位于col8左邊的未被鎖定的表格元素(比如是如圖5所示的col7)的當(dāng)前顯示寬度是否滿足:col7的當(dāng)前顯示寬度+(X-顯示區(qū)域中當(dāng)前已經(jīng)確定出的除col7外的其他未被鎖定的表格元素增加的寬度總量)≤a0,若滿足,則執(zhí)行與步驟j類似的步驟,當(dāng)判斷結(jié)果為否時(shí),則繼續(xù)針對(duì)col7執(zhí)行與步驟h和步驟i類似的步驟。以此類推,直至滿足某列的當(dāng)前顯示寬度+(X-顯示區(qū)域中當(dāng)前已經(jīng)確定出的除col7外的其他未被鎖定的表格元素增加的寬度總量)≤a0,則可以針對(duì)所述某列執(zhí)行與步驟j類似的步驟。
若假設(shè)col8的當(dāng)前顯示寬度為0,也即col8當(dāng)前還未在顯示區(qū)域進(jìn)行顯示,那么,由于顯示區(qū)域中當(dāng)前已經(jīng)確定出的除col8列外的其他未被鎖定的表格元素減少的寬度總量,就是col8列的寬度值的變化量a0-a2,因此,可以確定col8列的當(dāng)前顯示寬度滿足:當(dāng)前顯示寬度+(X-顯示區(qū)域中當(dāng)前已經(jīng)確定出的除col8外的其他未被鎖定的表格元素增加的寬度總量)=0+X-(a0-a2)。若假設(shè)col8列的當(dāng)前顯示寬度為0,且X-(a0-a2)≤a0,那么在執(zhí)行步驟i后得到的判斷結(jié)果為是;而若假設(shè)X-(a0-a2)>a0,則在執(zhí)行步驟i后得到的判斷結(jié)果為否。
為便于描述,本申請(qǐng)實(shí)施例假設(shè)X-(a0-a2)≤a0,從而后續(xù)可以執(zhí)行步驟j。
步驟j,瀏覽器確定col8的顯示寬度由0變化為“X-顯示區(qū)域中已經(jīng)確定出的其他未被鎖定的表格元素增加的寬度總量”=X-(a0-a2)。
本申請(qǐng)實(shí)施例中,瀏覽器對(duì)確定出的將要對(duì)表格元素采用的顯示寬度均可以進(jìn)行保存,以便在如圖7所示的第二狀態(tài)下,進(jìn)一步地需要調(diào)整表格元素的顯示尺寸時(shí),可以方便地獲取到第二狀態(tài)下的表格元素的顯示寬度。
基于上述介紹可知,可以在第一狀態(tài)下,檢測(cè)到滑動(dòng)操作指令對(duì)應(yīng)的操作點(diǎn)發(fā)生一次位置變化X后,根據(jù)第一狀態(tài)下顯示的未被鎖定的表格元素的當(dāng)前顯示寬度、本次位置變化量X、以及網(wǎng)絡(luò)表格各列的默認(rèn)寬度(假設(shè)各列的默認(rèn)寬度相同),以及網(wǎng)絡(luò)表格中的表格元素在網(wǎng)絡(luò)表格中所處位置的信息,確定未被鎖定的表格元素的顯示尺寸的變化結(jié)果,根據(jù)該變化結(jié)果,即可以確定未被鎖定的表格元素的顯示位置。比如,針對(duì)col2而言,若確定出col2寬度的變化結(jié)果為由1變化為0.5,那么,col2在如圖7所示的第二狀態(tài)下,垂直中軸線的位置,相對(duì)于圖5所示的第一狀態(tài)向左移動(dòng)0.5——也即,col2的顯示位置向左移動(dòng)0.5。
針對(duì)一些被鎖定的表格元素col9而言,它的顯示位置,會(huì)隨著未被鎖定的表格元素的顯示位置的變化而變化。具體地,以如圖5所示的第一狀態(tài)和如圖7所示的第二狀態(tài)為例,由于相對(duì)于第一狀態(tài)而言,第二狀態(tài)下的顯示區(qū)域中的表格元素col2和col10的顯示尺寸,均發(fā)生了0.5的變化量,使得非鎖定的表格元素的位置均向左移動(dòng)0.5,從而相對(duì)于第一狀態(tài)下的col9的顯示位置,第二狀態(tài)下的col9的顯示位置,也相應(yīng)地向左移動(dòng)0.5。
按照如圖6所示的未被鎖定的表格元素的顯示尺寸的變化方可知,當(dāng)在第一狀態(tài)下,由左至右的滑動(dòng)操作導(dǎo)致發(fā)生X=1的滑動(dòng)距離時(shí),可以得到如圖8所示的第三狀態(tài);而在第一狀態(tài)下,由左至右的滑動(dòng)操作導(dǎo)致發(fā)生X=10的滑動(dòng)距離時(shí),可以得到如圖9所示的第四狀態(tài)。
采用本申請(qǐng)實(shí)施例1提供的網(wǎng)絡(luò)表格的處理方法,由于在獲取到針對(duì)頁(yè)面中顯示的網(wǎng)絡(luò)表格部分的操作指令后,根據(jù)所述操作指令,通過調(diào)整頁(yè)面的表格中當(dāng)前已顯示的部分表格元素的顯示尺寸,和待顯示的表格元素的顯示尺寸,以在當(dāng)前頁(yè)面進(jìn)行顯示的方式,實(shí)現(xiàn)在不隱藏已顯示的表格元素的情況下,對(duì)所述當(dāng)前未顯示的表格元素進(jìn)行顯示,從而可以在用戶對(duì)頁(yè)面的表格進(jìn)行操作時(shí),使得頁(yè)面中既可以顯示當(dāng)前已顯示的表格元素,又能夠顯示待顯示的表格元素,方便用戶對(duì)比查看當(dāng)前已顯示的表格元素和待顯示的表格元素,從而解決了現(xiàn)有技術(shù)存在的如何在用戶對(duì)頁(yè)面的表格進(jìn)行操作時(shí),使得用戶能夠?qū)Ρ炔榭串?dāng)前已顯示的表格元素和待顯示的表格元素的問題。
此外,由于在接收到滑動(dòng)操作所觸發(fā)的針對(duì)頁(yè)面中顯示的網(wǎng)絡(luò)表格部分的操作指令后,在所述滑動(dòng)操作結(jié)束前,在頁(yè)面中顯示被鎖定的表格元素;隨著所述滑動(dòng)操作指令對(duì)應(yīng)的操作點(diǎn)的位置變化,調(diào)整未被鎖定的表格元素的顯示尺寸,從而可以實(shí)現(xiàn)在頁(yè)面中對(duì)被鎖定的表格元素進(jìn)行鎖定顯示,使得用戶很方便地在頁(yè)面中對(duì)比查看被鎖定的表格元素,提高了用戶操作網(wǎng)絡(luò)表格的效率,此外,由于可以隨著所述滑動(dòng)操作指令對(duì)應(yīng)的操作點(diǎn)的位置變化,調(diào)整未被鎖定的表格元素的顯示尺寸,從而可以讓用戶感知到滑動(dòng)操作作用于網(wǎng)絡(luò)表格而產(chǎn)生的影響,使得用戶有良好的用戶體驗(yàn)。
實(shí)施例2
基于前述實(shí)施例1詳細(xì)敘述了本申請(qǐng)的發(fā)明構(gòu)思,為了便于更好的理解本申請(qǐng)的技術(shù)特征、手段和效果,下面對(duì)本申請(qǐng)的表格顯示方法進(jìn)一步說明,從而形成了本申請(qǐng)的又一個(gè)實(shí)施例。
本申請(qǐng)實(shí)施例中,在網(wǎng)絡(luò)表格滾動(dòng)顯示的過程中,若假設(shè)用戶沒有對(duì)網(wǎng)頁(yè)中的表格元素進(jìn)行刪除而導(dǎo)致表格元素的數(shù)量過少,則一般地,網(wǎng)頁(yè)中能夠用于顯示網(wǎng)絡(luò)表格的可視區(qū)域(后稱顯示區(qū)域)的寬度和高度是不變的。當(dāng)顯示區(qū)域中既包含被鎖定的表格元素(也稱已鎖定的表格元素),又包含未被鎖定的表格元素(也稱非鎖定的表格元素)時(shí),網(wǎng)絡(luò)表格的顯示區(qū)域的寬度=網(wǎng)絡(luò)表格的顯示區(qū)域中所有已鎖定的表格元素的寬度+網(wǎng)絡(luò)表格的顯示區(qū)域中非鎖定的表格元素的寬度;網(wǎng)絡(luò)表格的顯示區(qū)域的高度=網(wǎng)絡(luò)表格的顯示區(qū)域中所有已鎖定的表格元素的高度+網(wǎng)絡(luò)表格的顯示區(qū)域中非鎖定的表格元素的高度。
本申請(qǐng)實(shí)施例2中,重點(diǎn)介紹在網(wǎng)絡(luò)表格滾動(dòng)顯示的過程中,如何通過增加網(wǎng)絡(luò)表格的顯示區(qū)域中某些非鎖定的表格元素列的寬度,并減少網(wǎng)絡(luò)表格的顯示區(qū)域中另外一些非鎖定的表格元素列的寬度列的寬度(或者通過增加網(wǎng)絡(luò)表格的顯示區(qū)域中某些非鎖定的表格元素列的高度,并減少網(wǎng)絡(luò)表格的顯示區(qū)域中另外一些非鎖定的表格元素列的寬度列的高度)的方式,來(lái)模擬網(wǎng)絡(luò)表格的滾動(dòng)顯示過程。其中,所述增加的寬度(或高度)以及減少的寬度(或高度),等于滑動(dòng)操作指令對(duì)應(yīng)的操作點(diǎn)的位置變化量。
例如,假設(shè)響應(yīng)于表格顯示指令,瀏覽器生成了20列×50行的網(wǎng)絡(luò)表格Q。其中網(wǎng)絡(luò)表格Q中包含的20列分別記為:col1~col20;網(wǎng)絡(luò)表格Q中包含的50行分別記為:row1~row50。假設(shè)網(wǎng)絡(luò)表格Q的顯示區(qū)域中可以顯示10列20行的表格元素(這里行和列,均為表格元素;所述的列,包含顯示在列中的數(shù)據(jù)在內(nèi);所述的行,包含顯示在列內(nèi)的數(shù)據(jù)在內(nèi)),用戶A期望對(duì)col1、col9以及col20這三列進(jìn)行鎖定,則本申請(qǐng)實(shí)施例2中對(duì)已鎖定表格元素進(jìn)行鎖定顯示,以及調(diào)整非鎖定的表格元素的顯示尺寸的方法,可以通過下述步驟來(lái)實(shí)現(xiàn)。需要說明的是,本申請(qǐng)實(shí)施例2中主要以已鎖定的表格元素為列作為例子進(jìn)行介紹,已鎖定的表格元素為行的情況下的網(wǎng)絡(luò)表格顯示流程可以參考已鎖定的表格元素為列的情況下的網(wǎng)絡(luò)表格顯示流程。
步驟21,瀏覽器從服務(wù)器獲取與表格Q的屬性相關(guān)的數(shù)據(jù)以及用于顯示在所述表格Q中的數(shù)據(jù),并利用該些數(shù)據(jù)渲染出網(wǎng)絡(luò)表格Q并顯示,顯示出的表格元素如圖2所示。然后,瀏覽器運(yùn)行前文所述的自由鎖定功能程序,以實(shí)現(xiàn)保存下述信息:
顯示區(qū)域當(dāng)前所顯示的網(wǎng)絡(luò)表格的總寬度和總高度;
網(wǎng)絡(luò)表格各列的寬度和各行的高度;
網(wǎng)絡(luò)表格包含的各個(gè)表格元素在網(wǎng)絡(luò)表格中所處位置的信息。
步驟22,用戶A點(diǎn)擊網(wǎng)絡(luò)表格Q表頭上的表格元素鎖定按鈕控件,觸發(fā)瀏覽器顯示如圖3所示的表格元素鎖定設(shè)置面板,用戶A通過該面板輸入期望鎖定的列:col1,col9,col20,然后點(diǎn)擊提交。
瀏覽器在接收到用戶點(diǎn)擊提交而觸發(fā)的指令后,響應(yīng)于該指令,保存用戶輸入的col1,col9,col20的信息。
這里所說的col1,col9,col20的信息,具體可以包括表征col1,col9,col20的表格元素類型“列”的信息“col”,以及表征col1,col9,col20在網(wǎng)絡(luò)表格中所處位置的信息“1”、“9”和“20”。
而后,瀏覽器根據(jù)保存的col1,col9,col20的信息、顯示區(qū)域當(dāng)前所顯示的網(wǎng)絡(luò)表格的總寬度和總高度、網(wǎng)絡(luò)表格各列的寬度和各行的高度,以及網(wǎng)絡(luò)表格Q中各個(gè)表格元素在網(wǎng)絡(luò)表格中所處位置的信息,重新渲染并顯示表格元素。
具體地,根據(jù)保存的col1,col9,col20的信息,可以確定待顯示在顯示區(qū)域內(nèi)的列,至少包括col1,col9,col20;根據(jù)顯示區(qū)域當(dāng)前所顯示的網(wǎng)絡(luò)表格的總寬度和網(wǎng)絡(luò)表格各列的寬度,可以確定除col1,col9,col20外,還可以顯示7列;根據(jù)保存的已鎖定的各列(col1,col9,col20)的信息和保存的網(wǎng)絡(luò)表格Q中各個(gè)表格元素在網(wǎng)絡(luò)表格中所處位置的信息,可以確定:
1、col1是位于網(wǎng)絡(luò)表格最左側(cè)的一列,從而確定col1的顯示位置為顯示區(qū)域左側(cè)第1列;
2、col20的右側(cè)不再存在已鎖定的列,且col1與col20之間相距的距離大于顯示區(qū)域中最多能夠顯示的列的數(shù)量“10”,從而確定col20的顯示位置為顯示區(qū)域右側(cè)第1列;
3、col9作為最鄰近于col1的一列,它與col1之間,還存在列co12~col8。由于根據(jù)顯示區(qū)域當(dāng)前所顯示的網(wǎng)絡(luò)表格的總寬度和網(wǎng)絡(luò)表格各列的寬度,可以確定待顯示的非鎖定的列的寬度=總寬度-(col1的寬度+col9的寬度+col20的寬度)。假設(shè)每列的寬度為1,則可以確定,待顯示的非鎖定的列的寬度=10-3=7,“7”剛好可以用于顯示列co12~col8,從而瀏覽器可以確定待顯示的非鎖定的列為“co12~col8”。
瀏覽器根據(jù)上述確定結(jié)果,以及已鎖定的列與待顯示的非鎖定的列在網(wǎng)絡(luò)表格中所處位置的信息,渲染并顯示網(wǎng)絡(luò)表格。顯示結(jié)果如圖5所示,該顯示區(qū)域從左到右依次展示的列為:col1、col2、col3、col4、col5、col6、col7、col8、col9、col20。
步驟23,用戶A通過滑動(dòng)操作觸發(fā)所述網(wǎng)絡(luò)表格Q沿水平方向向右滾動(dòng)且滾動(dòng)距離為x。其中,這里所說的滾動(dòng)距離,是網(wǎng)絡(luò)表格Q的滑塊滾動(dòng)的距離。
瀏覽器在檢測(cè)到該滾動(dòng)距離x和滾動(dòng)方向“由左至右”后,根據(jù)保存的已被鎖定的行的信息和網(wǎng)絡(luò)表格Q中各個(gè)表格元素在網(wǎng)絡(luò)表格中所處位置的信息,可以確定:
1、col1是位于網(wǎng)絡(luò)表格最左側(cè)的一列,從而確定col1的顯示位置仍然為顯示區(qū)域左側(cè)第1列;
2、col20的右側(cè)不再存在已鎖定的列,且col1與col20之間相距的距離大于顯示區(qū)域中最多能夠顯示的列的數(shù)量“10”,從而確定col20的顯示位置仍然為顯示區(qū)域右側(cè)第1列;
3、col9和col20之間,還存在非鎖定的列;
4、根據(jù)顯示區(qū)域當(dāng)前所顯示的網(wǎng)絡(luò)表格的總寬度和網(wǎng)絡(luò)表格各列的寬度,可以確定待顯示的非鎖定的列的寬度=總寬度-(col1的寬度+col9的寬度+col20的寬度)=10-3=7。若假設(shè)x=0.5<1,則根據(jù)檢測(cè)到的滑動(dòng)方向“由左至右”,可以確定當(dāng)前與左側(cè)已鎖定的列的右側(cè)相鄰的非鎖定的列(即與“col1”的右側(cè)相鄰的“col2”)的顯示尺寸,由原來(lái)的1變化為1-0.7=0.5;此外,可以確定當(dāng)前與右側(cè)已鎖定的列的右側(cè)相鄰的非鎖定的列(即與“col9”相鄰的“col10”)是待顯示的非鎖定的列,并且,col10的顯示尺寸,由原來(lái)的0變化為x=0.5。
瀏覽器根據(jù)上述確定結(jié)果,以及已鎖定的列與待顯示的非鎖定的列在網(wǎng)絡(luò)表格中所處位置的信息,渲染網(wǎng)絡(luò)表格并顯示。具體在顯示區(qū)域中顯示的表格元素如圖7所示。
步驟24,用戶A繼續(xù)觸發(fā)所述網(wǎng)絡(luò)表格Q沿水平方向向右滾動(dòng),并且,在滾動(dòng)距離x的基礎(chǔ)上,又滾動(dòng)了x的距離,即相較于圖5,向右滾動(dòng)了距離1。
瀏覽器在檢測(cè)到該滾動(dòng)距離x和滾動(dòng)方向“由左至右”后,根據(jù)保存的已被鎖定的行的信息和網(wǎng)絡(luò)表格Q中各個(gè)表格元素在網(wǎng)絡(luò)表格中所處位置的信息,可以確定:
1、col1是位于網(wǎng)絡(luò)表格最左側(cè)的一列,從而確定col1的顯示位置仍然為顯示區(qū)域左側(cè)第1列;
2、col20的右側(cè)不再存在已鎖定的列,且col1與col20之間相距的距離大于顯示區(qū)域中最多能夠顯示的列的數(shù)量“10”,從而確定col20的顯示位置仍然為顯示區(qū)域右側(cè)第1列;
3、col9和col20之間,還存在非鎖定的列;
4、根據(jù)顯示區(qū)域當(dāng)前所顯示的網(wǎng)絡(luò)表格的總寬度和網(wǎng)絡(luò)表格各列的寬度,可以確定待顯示的非鎖定的列的寬度=總寬度-(col1的寬度+col9的寬度+col20的寬度)=10-3=7。由于當(dāng)前滾動(dòng)的距離相對(duì)于圖7來(lái)說是滾動(dòng)了x,則根據(jù)檢測(cè)到的滑動(dòng)方向“由左至右”,可以確定當(dāng)前與左側(cè)已鎖定的列的右側(cè)相鄰的非鎖定的列(即與“col1”的右側(cè)相鄰的“col2”)的顯示尺寸,由原來(lái)的1變化為1-1=0;此外,可以確定當(dāng)前與右側(cè)已鎖定的列的右側(cè)相鄰的非鎖定的列(即與“col9”相鄰的“col10”)是待顯示的非鎖定的列,并且,col10的顯示尺寸變化為2x=1。
瀏覽器根據(jù)上述確定結(jié)果,以及已鎖定的列與待顯示的非鎖定的列在網(wǎng)絡(luò)表格中所處位置的信息,渲染網(wǎng)絡(luò)表格并顯示。具體在顯示區(qū)域中顯示的表格元素網(wǎng)絡(luò)表格Q的顯示區(qū)域中顯示的表格元素如圖8所示。
步驟25,用戶A繼續(xù)觸發(fā)所述網(wǎng)絡(luò)表格Q沿水平方向向右滾動(dòng),并且,在滾動(dòng)距離2x的基礎(chǔ)上,又滾動(dòng)了18x的距離(假設(shè)此時(shí)滑塊已滑到最右側(cè)),即相較于圖8,滑塊又向右滾動(dòng)了距離9。則瀏覽器按照與上述步驟23、24類似的方式調(diào)整網(wǎng)絡(luò)表格中的非鎖定的列的寬度、顯示位置和調(diào)整已鎖定的列(col9)的顯示位置,可以顯示出如圖9所示的網(wǎng)絡(luò)表格。
需要說明的是,當(dāng)col9移動(dòng)到與col1相鄰的位置并顯示后,若此時(shí)滑塊繼續(xù)從左至右滾動(dòng),瀏覽器根據(jù)滑動(dòng)方向“由左至右”,以及col9左側(cè)不存在待顯示的非鎖定的列,可以確定,col9在滑塊繼續(xù)從左至右滑動(dòng)時(shí),顯示位置不發(fā)生變化。
由于在獲取到針對(duì)頁(yè)面中顯示的網(wǎng)絡(luò)表格部分的操作指令后,根據(jù)所述操作指令,通過調(diào)整頁(yè)面的表格中當(dāng)前已顯示的部分表格元素的顯示尺寸,和待顯示的表格元素的顯示尺寸,以在當(dāng)前頁(yè)面進(jìn)行顯示的方式,實(shí)現(xiàn)在不隱藏已顯示的表格元素的情況下,對(duì)所述當(dāng)前未顯示的表格元素進(jìn)行顯示,從而可以在用戶對(duì)頁(yè)面的表格進(jìn)行操作時(shí),使得頁(yè)面中既可以顯示當(dāng)前已顯示的表格元素,又能夠顯示待顯示的表格元素,方便用戶對(duì)比查看當(dāng)前已顯示的表格元素和待顯示的表格元素,從而解決了現(xiàn)有技術(shù)存在的如何在用戶對(duì)頁(yè)面的表格進(jìn)行操作時(shí),使得用戶能夠?qū)Ρ炔榭串?dāng)前已顯示的表格元素和待顯示的表格元素的問題。
由于在接收到滑動(dòng)操作所觸發(fā)的針對(duì)頁(yè)面中顯示的網(wǎng)絡(luò)表格部分的操作指令后,在所述滑動(dòng)操作結(jié)束前,在頁(yè)面中顯示被鎖定的表格元素;隨著所述滑動(dòng)操作指令對(duì)應(yīng)的操作點(diǎn)的位置變化,調(diào)整未被鎖定的表格元素的顯示尺寸,從而可以實(shí)現(xiàn)在頁(yè)面中對(duì)被鎖定的表格元素進(jìn)行鎖定顯示,使得用戶很方便地在頁(yè)面中對(duì)比查看被鎖定的表格元素,提高了用戶操作網(wǎng)絡(luò)表格的效率,此外,由于可以隨著所述滑動(dòng)操作指令對(duì)應(yīng)的操作點(diǎn)的位置變化,調(diào)整未被鎖定的表格元素的顯示尺寸,從而可以讓用戶感知到滑動(dòng)操作作用于網(wǎng)絡(luò)表格而產(chǎn)生的影響,使得用戶有良好的用戶體驗(yàn)。
實(shí)施例3
本申請(qǐng)實(shí)施例提供了一種網(wǎng)絡(luò)表格的處理裝置,用以解決現(xiàn)有技術(shù)存在的如何在用戶對(duì)頁(yè)面的表格進(jìn)行操作時(shí),使得用戶能夠?qū)Ρ炔榭串?dāng)前已顯示的表格元素和待顯示的表格元素的問題。該裝置的具體結(jié)構(gòu)示意圖如圖10所示,包括:操作指令獲取單元101以及表格元素調(diào)整單元102。
其中,操作指令獲取單元101,用于獲取針對(duì)頁(yè)面中顯示的網(wǎng)絡(luò)表格部分的操作指令;所述操作指令指示在頁(yè)面中顯示所述網(wǎng)絡(luò)表格的待顯示的表格元素;
表格元素調(diào)整單元102,用于根據(jù)所述操作指令,調(diào)整所述網(wǎng)絡(luò)表格中待顯示的表格元素的顯示尺寸,以及當(dāng)前已顯示的至少部分表格元素的顯示尺寸,以在當(dāng)前頁(yè)面進(jìn)行顯示。
在一種實(shí)施方式中,操作指令獲取單元101獲取的操作指令為滑動(dòng)操作指令。
在一種實(shí)施方式中,表格元素調(diào)整單元102,用于:根據(jù)所述操作指令,調(diào)整所述網(wǎng)絡(luò)表格中待顯示且未被鎖定的表格元素的顯示尺寸,以及當(dāng)前已顯示的至少部分表格元素的顯示尺寸。
在一種實(shí)施方式中,所述當(dāng)前已顯示的至少部分表格元素,包括當(dāng)前已顯示且未被鎖定的表格元素。
在一種實(shí)施方式中,表格元素調(diào)整單元102,用于:當(dāng)操作指令獲取單元獲取的操作指令為滑動(dòng)操作指令時(shí),隨著所述滑動(dòng)操作指令對(duì)應(yīng)的操作點(diǎn)的位置變化,根據(jù)所述操作點(diǎn)的位置變化量和所述滑動(dòng)操作對(duì)應(yīng)的滑動(dòng)方向,調(diào)整所述網(wǎng)絡(luò)表格中待顯示且未被鎖定的表格元素的顯示尺寸,以及所述當(dāng)前已顯示且未被鎖定的表格元素的顯示尺寸。
在一種實(shí)施方式中,表格元素調(diào)整單元102,用于:當(dāng)所述滑動(dòng)方向?yàn)橛勺笾劣視r(shí),若所述位置變化量不大于當(dāng)前已顯示在最左側(cè)的未被鎖定的表格元素的當(dāng)前顯示寬度,則將所述已顯示在最左側(cè)的未被鎖定的表格元素的顯示寬度,調(diào)整為所述已顯示在最左側(cè)的未被鎖定的表格元素的當(dāng)前顯示寬度與所述位置變化量的差值,并,將當(dāng)前已顯示在最右側(cè)的未被鎖定的表格元素的顯示寬度,調(diào)整為所述當(dāng)前已顯示在最右側(cè)的未被鎖定的表格元素的當(dāng)前顯示寬度與所述位置變化量的和值;
當(dāng)所述滑動(dòng)方向?yàn)橛捎抑磷髸r(shí),若所述位置變化量不大于當(dāng)前已顯示在最右側(cè)的未被鎖定的表格元素的當(dāng)前顯示寬度,則將所述已顯示在最右側(cè)的未被鎖定的表格元素的顯示寬度,調(diào)整為所述已顯示在最右側(cè)的未被鎖定的表格元素的當(dāng)前顯示寬度與所述位置變化量的差值,并,將當(dāng)前已顯示在最左側(cè)的未被鎖定的表格元素的顯示寬度,調(diào)整為所述當(dāng)前已顯示在最左側(cè)的未被鎖定的表格元素的當(dāng)前顯示寬度與所述位置變化量的和值;
當(dāng)所述滑動(dòng)方向?yàn)橛缮现料聲r(shí),若所述位置變化量不大于當(dāng)前已顯示在最上側(cè)的未被鎖定的表格元素的當(dāng)前顯示高度,則將所述已顯示在最上側(cè)的未被鎖定的表格元素的顯示高度,調(diào)整為所述已顯示在最上側(cè)的未被鎖定的表格元素的當(dāng)前顯示高度與所述位置變化量的差值,并,將當(dāng)前已顯示在最下側(cè)的未被鎖定的表格元素的顯示高度,調(diào)整為所述當(dāng)前已顯示在最下側(cè)的未被鎖定的表格元素的當(dāng)前顯示高度與所述位置變化量的和值;
當(dāng)所述滑動(dòng)方向?yàn)橛上轮辽蠒r(shí),若所述位置變化量不大于當(dāng)前已顯示在最下側(cè)的未被鎖定的表格元素的當(dāng)前顯示高度,則將所述已顯示在最下側(cè)的未被鎖定的表格元素的顯示高度,調(diào)整為所述已顯示在最下側(cè)的未被鎖定的表格元素的當(dāng)前顯示高度與所述位置變化量的差值,并,將當(dāng)前已顯示在最上側(cè)的未被鎖定的表格元素的顯示高度,調(diào)整為所述當(dāng)前已顯示在最上側(cè)的未被鎖定的表格元素的當(dāng)前顯示高度與所述位置變化量的和值。
在一種實(shí)施方式中,表格元素調(diào)整單元102,用于:當(dāng)所述滑動(dòng)方向?yàn)橛勺笾劣視r(shí),若所述位置變化量與當(dāng)前已顯示在最右側(cè)的未被鎖定的表格元素的當(dāng)前顯示寬度的和值,大于表格元素的默認(rèn)寬度,則根據(jù)所述位置變化量,調(diào)整處于已顯示在最右側(cè)的未被鎖定的表格元素右側(cè)的、待顯示且未被鎖定的表格元素的顯示寬度;
當(dāng)所述滑動(dòng)方向?yàn)橛捎抑磷髸r(shí),若所述位置變化量與當(dāng)前已顯示在最左側(cè)的未被鎖定的表格元素的當(dāng)前顯示寬度的和值,大于表格元素的默認(rèn)寬度,則根據(jù)所述位置變化量,調(diào)整處于已顯示在最左側(cè)的未被鎖定的表格元素左側(cè)的、待顯示且未被鎖定的表格元素的顯示寬度;
當(dāng)所述滑動(dòng)方向?yàn)橛缮现料聲r(shí),若所述位置變化量與當(dāng)前已顯示在最下側(cè)的未被鎖定的表格元素的當(dāng)前顯示高度的和值,大于表格元素的默認(rèn)高度,則根據(jù)所述位置變化量,調(diào)整處于已顯示在最下側(cè)的未被鎖定的表格元素下側(cè)的、待顯示且未被鎖定的表格元素的顯示高度;
當(dāng)所述滑動(dòng)方向?yàn)橛上轮辽蠒r(shí),若所述位置變化量與當(dāng)前已顯示在最上側(cè)的未被鎖定的表格元素的當(dāng)前顯示高度的和值,大于表格元素的默認(rèn)高度,則根據(jù)所述位置變化量,調(diào)整處于已顯示在最上側(cè)的未被鎖定的表格元素上側(cè)的、待顯示且未被鎖定的表格元素的顯示高度。
在一種實(shí)施方式中,表格元素調(diào)整單元102,還用于:當(dāng)操作指令獲取單元獲取的操作指令為滑動(dòng)操作指令時(shí),根據(jù)所述操作指令,調(diào)整已顯示且被鎖定的表格元素的顯示位置。
在一種實(shí)施方式中,表格元素調(diào)整單元102,用于:根據(jù)所述操作指令,當(dāng)所述操作指令對(duì)應(yīng)的滑動(dòng)方向?yàn)橛勺笾劣一驈挠抑磷髸r(shí),根據(jù)未被鎖定的表格元素的顯示尺寸的變化量,調(diào)整除所述距離頁(yè)面的表格左側(cè)最近的被鎖定的頁(yè)面的表格和距離頁(yè)面的表格右側(cè)最近的被鎖定的表格元素外的其他被鎖定的表格元素的顯示位置;根據(jù)所述操作指令,當(dāng)所述操作指令對(duì)應(yīng)的滑動(dòng)方向?yàn)橛缮现料禄驈南轮辽蠒r(shí),根據(jù)未被鎖定的表格元素的顯示尺寸的變化量,調(diào)整除所述距離頁(yè)面的表格上側(cè)最近的被鎖定的頁(yè)面的表格和距離頁(yè)面的表格下側(cè)最近的被鎖定的表格元素外的其他被鎖定的表格元素的顯示位置。
在一種實(shí)施方式中,還包括鎖定指令接收單元,用于:在操作指令獲取單元取針對(duì)頁(yè)面的表格的操作指令前,將頁(yè)面的表格進(jìn)行顯示后,接收針對(duì)所述頁(yè)面的表格的表格元素的鎖定指令;將所述鎖定指令所對(duì)應(yīng)的表格元素,確定為被鎖定的表格元素;顯示確定出的被鎖定的表格元素。
本發(fā)明是參照根據(jù)本發(fā)明實(shí)施例的方法、設(shè)備(系統(tǒng))、和計(jì)算機(jī)程序產(chǎn)品的流程圖和/或方框圖來(lái)描述的。應(yīng)理解可由計(jì)算機(jī)程序指令實(shí)現(xiàn)流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結(jié)合??商峁┻@些計(jì)算機(jī)程序指令到通用計(jì)算機(jī)、專用計(jì)算機(jī)、嵌入式處理機(jī)或其他可編程數(shù)據(jù)處理設(shè)備的處理器以產(chǎn)生一個(gè)機(jī)器,使得通過計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備的處理器執(zhí)行的指令產(chǎn)生用于實(shí)現(xiàn)在流程圖一個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方框或多個(gè)方框中指定的功能的裝置。
這些計(jì)算機(jī)程序指令也可存儲(chǔ)在能引導(dǎo)計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備以特定方式工作的計(jì)算機(jī)可讀存儲(chǔ)器中,使得存儲(chǔ)在該計(jì)算機(jī)可讀存儲(chǔ)器中的指令產(chǎn)生包括指令裝置的制造品,該指令裝置實(shí)現(xiàn)在流程圖一個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方框或多個(gè)方框中指定的功能。
這些計(jì)算機(jī)程序指令也可裝載到計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備上,使得在計(jì)算機(jī)或其他可編程設(shè)備上執(zhí)行一系列操作步驟以產(chǎn)生計(jì)算機(jī)實(shí)現(xiàn)的處理,從而在計(jì)算機(jī)或其他可編程設(shè)備上執(zhí)行的指令提供用于實(shí)現(xiàn)在流程圖一個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方框或多個(gè)方框中指定的功能的步驟。
在一個(gè)典型的配置中,計(jì)算設(shè)備包括一個(gè)或多個(gè)處理器(CPU)、輸入/輸出接口、網(wǎng)絡(luò)接口和內(nèi)存。
內(nèi)存可能包括計(jì)算機(jī)可讀介質(zhì)中的非永久性存儲(chǔ)器,隨機(jī)存取存儲(chǔ)器(RAM)和/或非易失性內(nèi)存等形式,如只讀存儲(chǔ)器(ROM)或閃存(flash RAM)。內(nèi)存是計(jì)算機(jī)可讀介質(zhì)的示例。
計(jì)算機(jī)可讀介質(zhì)包括永久性和非永久性、可移動(dòng)和非可移動(dòng)媒體可以由任何方法或技術(shù)來(lái)實(shí)現(xiàn)信息存儲(chǔ)。信息可以是計(jì)算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序的模塊或其他數(shù)據(jù)。計(jì)算機(jī)的存儲(chǔ)介質(zhì)的例子包括,但不限于相變內(nèi)存(PRAM)、靜態(tài)隨機(jī)存取存儲(chǔ)器(SRAM)、動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(DRAM)、其他類型的隨機(jī)存取存儲(chǔ)器(RAM)、只讀存儲(chǔ)器(ROM)、電可擦除可編程只讀存儲(chǔ)器(EEPROM)、快閃記憶體或其他內(nèi)存技術(shù)、只讀光盤只讀存儲(chǔ)器(CD-ROM)、數(shù)字多功能光盤(DVD)或其他光學(xué)存儲(chǔ)、磁盒式磁帶,磁帶磁磁盤存儲(chǔ)或其他磁性存儲(chǔ)設(shè)備或任何其他非傳輸介質(zhì),可用于存儲(chǔ)可以被計(jì)算設(shè)備訪問的信息。按照本文中的界定,計(jì)算機(jī)可讀介質(zhì)不包括暫存電腦可讀媒體(transitory media),如調(diào)制的數(shù)據(jù)信號(hào)和載波。
還需要說明的是,術(shù)語(yǔ)“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、商品或者設(shè)備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、商品或者設(shè)備所固有的要素。在沒有更多限制的情況下,由語(yǔ)句“包括一個(gè)……”限定的要素,并不排除在包括所述要素的過程、方法、商品或者設(shè)備中還存在另外的相同要素。
本領(lǐng)域技術(shù)人員應(yīng)明白,本申請(qǐng)的實(shí)施例可提供為方法、系統(tǒng)或計(jì)算機(jī)程序產(chǎn)品。因此,本申請(qǐng)可采用完全硬件實(shí)施例、完全軟件實(shí)施例或結(jié)合軟件和硬件方面的實(shí)施例的形式。而且,本申請(qǐng)可采用在一個(gè)或多個(gè)其中包含有計(jì)算機(jī)可用程序代碼的計(jì)算機(jī)可用存儲(chǔ)介質(zhì)(包括但不限于磁盤存儲(chǔ)器、CD-ROM、光學(xué)存儲(chǔ)器等)上實(shí)施的計(jì)算機(jī)程序產(chǎn)品的形式。
以上所述僅為本申請(qǐng)的實(shí)施例而已,并不用于限制本申請(qǐng)。對(duì)于本領(lǐng)域技術(shù)人員來(lái)說,本申請(qǐng)可以有各種更改和變化。凡在本申請(qǐng)的精神和原理之內(nèi)所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本申請(qǐng)的權(quán)利要求范圍之內(nèi)。