新檢索的內容對象的數量),并且結構文檔的滾動范圍可以調整為包括一系列中的所有內容對象的滾動位置(例如,從O至50)。視口的滾動位置還可以被調整(例如,增加新檢索的內容對象的數量)以便繼續顯示相同的系列的內容對象。作為另一實例,新檢索的內容對象可以放入一系列中最新(例如,滾動位置O)內容對象以上的負滾動位置中(例如,在-1開始并且,例如,繼續至-2、-3等),并且結構文檔的滾動范圍可以調整為包括新檢索的內容對象和一系列中的其他內容對象(例如,從-50至50)。在這個實例中,一系列中的其他內容對象的位置不需要調整,并且因此,視口的位置也不需要調整。在【具體實施方式】中,用戶可以滾動通過一系列的內容對象。作為實例,用戶可以將她的手指橫掃觸摸屏以沿著一系列前進或后退。例如,為了沿著一系列向前滾動,可以將她的手指在觸摸屏向左邊掃或者向上運動。相反地,為了沿著一系列向后滾動,可以將她的手指在觸摸屏向右邊掃或者下向運動。
[0073]如上所述,在【具體實施方式】中,在任何給定時間,僅內容對象的一部分集合(例如,系列)可以顯示在屏幕(例如,觸摸屏112)上的圖形用戶界面的視口中,并且為了觀看當前沒有顯示在屏幕上的內容對象,用戶可以滾動通過一系列內容對象。例如,用戶可以使用鼠標或點控設備來向上或向下拖曳圖形用戶界面的滾動條。作為另一實例,用戶可以使用顯示圖形用戶界面的觸摸屏上的掃過手勢。一系列內容對象的一個實例,電子書,可以包括一系列頁,并且用戶可以滾動通過這些頁。在具體時間,僅書上的幾頁可以在屏幕上向用戶顯示。作為一系列內容對象的另一實例,影集,可以包括一系列圖像,并且用戶可以滾動通過這些圖像。在具體時間,僅影集中的幾個圖像可以在屏幕上向用戶顯示。這些內容對象(例如,一系列內容對象中的)中的每一個可具有限定內容對象的區域的邊界。這個邊界可以,例如,是由實現包含內容對象結構文檔的語言指定的(例如,Java腳本)。作為實例,書的頁或者影集中的圖像可具有限定二維區域的邊界(例如,在觸摸屏112上顯示的應用程序的圖形用戶界面以內)。圖3B示出如網頁的示例性結構文檔325。結構文檔325可包括多個內容對象335,但是在圖3B的實例中,僅一部分內容對象顯示在由例如,移動設備100的計算設備承載的應用程序的圖形用戶界面的視口 345內。圖3B的實例還示出內容對象335可以小于視口 345的尺寸。盡管在圖3B的實例中未示出,但本公開中預料到了結構文檔325可以大于視口 345、小于視口 345、或與視口 345 —樣大。此外,盡管圖3B的實例示出具有垂直布置的一系列內容對象的結構文檔,但本公開設想到了內容對象的任何合適的布置,包括內容對象的水平布置或平鋪布置。
[0074]在【具體實施方式】中,結構文檔(或者由圖形用戶界面顯示的其他項)在由相對于顯示器的滾動軸限定的二維區域或區域以內可以是可滾動的。例如,如在圖3A中示出的,滾動軸可以是相對于觸摸屏112的顯示器限定的水平的軸(被稱為“X”)和垂直的軸(被稱為“Y”),并且用戶可以在由水平滾動軸和垂直滾動軸限定的二維區域或區域以內在任何方向上滾動(例如,對角地或非線性地)。如果,例如,觸摸屏112的顯示器是可旋轉的或者另外可變的,那么相對于顯示器限定的滾動軸也可以改變。如在圖3B中示出的,一個或多個完整內容對象335或部分內容對象335可以在視口 345中可見。通過滾動(例如,通過在觸摸屏112的表面上使用如向上掃、向下掃、向左邊掃或者向右邊掃、或者在任何其他方向上掃的觸摸手勢),視口中的一個或多個內容對象可以從視圖退出,并且相鄰的內容對象(例如,整個內容對象或部分內容對象)可以同時并無縫地滾動到視圖中。在【具體實施方式】中,視口可以每次僅顯示一個內容對象335,并且當用戶滾動時,用戶不連續的不連續地翻過內容對象,通常稱為分頁滾動。例如,當用戶滾動時,視口中的一個內容對象可以從視圖退出,并且相鄰的內容對象(例如,水平、垂直、或對角相鄰)可以同時滾動入視圖。當相鄰的內容對象335的預先確定量(例如,50%,如由相鄰的內容對象的邊界限定的)移動進入視口時,然后相鄰的內容對象335可以自動地“對齊”到恰當位置(“snap into place”),變為視口中顯示的僅有的內容對象。在又一其他實施方式中,包括由圖3B示出的實施方式,用戶可以自由滾動通過內容對象。例如,視口可以顯示多個內容對象或部分內容對象335,并且當用戶滾動時,滾動可以是連續越過一個或多個內容對象335的邊界(例如,獨立于內容對象邊界地并且在不改變邊界處的滾動行為的情況下滾動或者一旦越過邊界就“對齊”到恰當位置)。例如,滾動可按視口 345可以包括一個或多個內容對象335或部分的內容對象335的方式動態至停止點,在又一實施方式中,可以使用分頁滾動和自由滾動的組合。作為實例,如果視口 345顯示單個內容對象335,那么用戶可以在內容對象335以內自由滾動,并且一旦用戶到達內容對象的邊界,滾動可以切換到分頁滾動,然后使得另一個內容對象(例如,相鄰的內容對象)進入視口。此時,滾動可以再一次是在當前顯示的內容對象的邊界以內的自由滾動。
[0075]在【具體實施方式】中,用戶的觸摸手勢的速度可以影響在經由應用程序的圖形用戶界面顯示的結構文檔以內的滾動行為。例如,用戶的觸摸手勢輸入的矢量或路徑(或其速度)可以用于確定用戶是否希望瀏覽結構文檔以內的相鄰的內容對象或進一步遠離的內容對象。例如,如果用戶掃過以滾動通過影集中的一系列照片,那么用戶的觸摸手勢的速度可以確定是否滾動前進至相鄰的照片(例如,如果速度是相對低的)或者是否滾動前進多個照片(例如,如果速度是相對高的)。作為實例,如果用戶,在相對短的時間量中,掃過相對大的距離,那么可以確定觸摸手勢的速度是相對高的,并且通過滾動前進多個內容對象。此外,用戶的手勢的速度也可以用于確定是否滾動是分頁滾動(例如,如果速度是相對低的)或連續的或自由的滾動(例如,如果速度是相對高的)。在又一其他實施方式中,如果用戶在給定的時間周期中進行多于某個數量的觸摸手勢(例如,在兩秒內多于兩次掃動),結構文檔內滾動的速度可以隨著時間周期中的每個其他掃動增加,例如,倍增的因數。例如,兩秒內的第三次掃動可具有比第二次掃動的滾動速度快1.2倍的滾動速度(例如,由布局引擎帶動)。此外,兩秒以內的第四次掃動可具有比第二次掃動的滾動速度快1.4倍的滾動速度。在【具體實施方式】中,滾動可以在結構文檔以內在瀏覽期間的任意一點中止或停止。例如,通過手指掃過觸摸屏112在頁面之間滾動的用戶可以通過中斷掃動運動并且將她的手指保持在原位來中斷滾動并“凍結”顯示器。此外,用戶可以通過在前進滾動期間在相反方向上掃動來中斷滾動并且切換滾動方向。
[0076]在【具體實施方式】中,用戶的用于滾動的觸摸手勢可以用于確定是否采用滾動中的限位(clamping)行為。例如,如果用戶嘗試在文檔以內向上滾動,但進行不完全垂直的滾動手勢(例如,掃動),在無限位的情況下,文檔可能按對角線方式而不是垂直方式滾動。在【具體實施方式】中,可以期望“限位”滾動行為為僅垂直地(或相似地,僅水平地)以更好匹配用戶的意圖。在圖3A的實例中,示出在觸摸屏112上垂直滾動的用戶的觸摸手勢路徑。圖3C示出相同的觸摸手勢路徑。圖3C中的中心星號形狀示出觸摸手勢路徑的起點305,并且路徑的終點是通過終點315示出的。如上所述,即使用戶希望僅垂直滾動,用戶的觸摸手勢路徑也不是完全垂直的。滾動行為的限位可以基于用戶的觸摸手勢路徑完成。觸摸屏112可以分成任何合適數量的區域(例如,圖3C中的八個區域310-380)。此外,區域可以在尺寸上或角度跨度上相等或者,可替代地,在尺寸上或角度跨度上不相等。這些區域可以相對于觸摸手勢的起點和顯示器的滾動軸限定。例如,區域可以均由從相對于觸摸屏112的顯示器的垂直(例如,“Y”)滾動軸或水平(例如,“X”)滾動軸測量的一個或多個角度限定的。在圖3C中,觸摸屏顯示器的區域330可以限定為包括水平滾動軸以上22.5度和通過起點305的水平滾動軸以下22.5度之間的觸摸屏上的所有點。此外,觸摸屏顯示器的區域310可以限定為包括水平滾動軸以上67.5度和水平滾動軸以上112.5度之間的觸摸屏上的所有點。在圖3C的實例中,區域310和350對應于垂直滾動軸,而區域330和370對應于水平滾動軸。區域320、340、360、和380不對應于任何一個滾動軸。在圖3C中的圓形300表示從起點305的預先確定的長度。在【具體實施方式】中,所關注的區域不僅通過角度限定(如上所述),但必須同樣落入圓形300以內。因此,在這個實例中,所關注的區域將是圓形300的扇區。應當注意的是,盡管圖3C的實例示出通過相等的大小的角度跨度限定的八個區域,但區域可以任何合適的方式相對于起點305限定。在【具體實施方式】中,確定對應于(或包含)用戶的觸摸手勢的路徑的至少一部分的觸摸屏112的區域(或幾個區域)。在圖3C的實例中,區域310完全包含用于滾動的用戶的觸摸手勢的路徑。因為區域310對應于垂直滾動軸,所以滾動行為可被“限位”為僅垂直向上滾動(例如,線性地并平行于垂直的“Y”滾動軸)。相似地,如果區域350包含所有或者部分用于滾動的用戶的觸摸手勢的路徑,那么滾動行為可以限位為僅垂直向下滾動。在【具體實施方式】中,用戶的觸摸手勢路徑的僅垂直部分用于生成垂直限位的滾動行為。如果區域330或370包含所有或部分用于滾動的用戶的觸摸手勢,那么滾動行為可以限位為僅水平滾動(分別或者至右邊或者至左邊)。在【具體實施方式】中,用戶的觸摸手勢路徑的僅水平部分用于生成水平限位的滾動行為。最后,如果用戶的觸摸手勢的路徑落入區域320、340、360或380以內,那么滾動行為不限位在任何一個滾動軸,并且可以,例如,在結構文檔以內自由滾動。
[0077]在【具體實施方式】中,一旦限位開始,(例如,基于用于垂直向下滾動的第一觸摸手勢)滾動的限位行為可以持續預先確定的時間量(例如,一秒)。因此,例如,如果用戶在限位計時器終止之前(例如,一秒結束之前)進行用于向下滾動的第二個觸摸手勢,但這個第二手勢路徑落入區域340中(相對于第二起點確定的),那么滾動可以繼續被垂直向下限位直至限位計時器終止。在這個實例中,第二手勢路徑的垂直部分(落入區域340中)可以用于生成垂直限位的滾動行為。作為另一實例,如果垂直限位開始之后(例如,基于用于垂直向下滾動的第一觸摸手勢),用戶在限位計時器結束之前進行用于水平滾動的第二觸摸手勢,并且這個第二手勢路徑落入區域330中(相對于第二起點確定的),那么滾動可以繼續限位為向下垂直直至限位計時器終止。在這個實例中,第二手勢路徑的垂直部分(落入區域330中)可以用于生成垂直限位的滾動行為。作為又一實例,如果垂直限位開始之后(例如,基于用于垂直向下滾動的第一觸摸手勢),用戶在限位計時器結束之前進行用于垂直滾動的第二觸摸手勢,并且這個第二手勢路徑落入區域310中(相對于第二起點確定的),那么滾動可以繼續垂直限位但可以改為向上垂直限位,直至限位計時器終止。在這個實例中,第二手勢路徑的垂直部分(落入區域310中)可以用于生成垂直向上限位的滾動行為。在這些實例中,限位是按每個軸,而不是每個區域完成的。將理解盡管以上實例示出垂直限位(向下或者向上)水平限位行為(例如,向左邊或者向右邊),一旦開始,同樣可以持續預定量的時間。限位計時器終止之后,用于滾動的任何新的觸摸手勢可以被評估以確定是否開始再一次限位行為。除了限位計時器的終止,如果用戶保持(例如,保持手指或觸控筆)在觸摸屏112上預定量的時間而不開始新的手勢那么限位行為可以結束。如果先前用戶手勢的完整動作或特點終止(例如,先前手勢的動作)已完全停止,那么限位行為同樣可以結束。
[0078]在【具體實施方式