用于在用户代理中提供手指触摸层的方法和设备的制作方法

xiaoxiao2020-7-22  18

专利名称:用于在用户代理中提供手指触摸层的方法和设备的制作方法
技术领域
本发明一般涉及使用在手持式或移动设备中实现的诸如web浏览器之类的用户代理来激活链接。
背景技术
计算机用户通常使用诸如web浏览器之类的用户代理应用程序来访问通过他们的计算机所连接到的计算机网络可用的文档及其他资源。这样的资源可以通过统一资源标识符(URI)来标识,URI通常是统一资源定位符(URL),其唯一地标识资源并提供定位和访问资源所需的信息。显示在诸如web浏览器之类的用户代理上的网页或其他文档可以提供到特定资源的URI的链接。如此,用户代理一般提供允许用户激活一个链接以便访问对应的资源的界面。例如,诸如web浏览器之类的用户代理的常规界面包括允许用户在一个链接上点击以将其激活的诸如鼠标之类的点击设备。用户代理的界面可以提供除激活链接之外的其他功能。例如,网页上可以有用户可以与其进行交互的其他类型的元件,而不仅仅链接。例如,用户可以通过点击单选按钮, 或通过点击并在编辑字段键入信息来输入信息。同样,用户还可以点击网页中的图像,以便显示其更大的版本。然而,在移动或手持式设备中的用户代理上提供的界面被证明对用户来说是麻烦的。例如,试图以普通的读取缩放级别点击移动设备上的网页中的小链接从历史来看非常易于出错。移动和手持式设备的最新的趋势是实现触摸屏输入设备,以允许用户使用手指触摸或笔尖来执行“点击”动作。尽管用户与屏幕上较大的表面区域进行接触,常规的触摸屏设备通常作为屏幕上的单个点来检测手指/笔尖的接触位置(类似于鼠标点击)。这会产生问题,因为由于移动或手持式设备的尺寸约束,用户难以在屏幕上的特定点处准确地瞄准手指或笔尖。结果,用户点击特定交互式元件的尝试可能会导致没有元件被点击或点击了错误的元件。为此,提供允许用户使用他/她的手指或笔尖与诸如web浏览器之类的用户代理进行交互的不太易于出错的方式将是有利的。

发明内容
提供了允许带有触摸屏界面的用户代理在用户使用他/她的手指或笔尖来点击显示器上的交互式元件时给用户提供某一误差范围的系统和方法。例如,当用户的手指被用来执行点击动作时,可以假设手指将覆盖某一区域,仅仅检测该点击的单个点可能不准确。本发明的示例性实施例通过确定触敏显示器上的点周围的覆盖面积,即,“触摸半径”,来使用此概念。可以扫描触摸半径内的区域,以发现其中包含的,或者至少部分地包含的任何交互式元件(例如,链接、图像,或表单控件)。由于这样的扫描而检测到的任何交互式元件可以被视为用户的潜在目标。根据一个示例性实施例,当由于扫描而检测到多个交互式元件作为潜在目标,从而导致关于用户打算触摸哪一个交互式元件有歧义时,可以在显示器上展开这类元件。这类元件的展开可以通过使得用户更容易触摸预定目标来帮助解析歧义。如果,例如,这类元件等于或大于预定尺寸,本发明的其他实施例可以突出显示或动画化交互式元件来指出它们处于可能被选定的项目的半径内。其他实施例仍可以将展开与动画化、突出显示、或其他显示效果组合起来,以指出它们处于可能被选定的元件的半径内。其他实施例可以将不同类型的交互式元件与不同的展开比例或程度和/或不同类型的显示效果相关联;如此,当完全不同类型的交互式元件在该半径内时,可以相对于其他元件类型给每一种元件类型提供不同的显示效果和/或展开比例。通过阅读下面给出的具体实施方式
,本发明的适用性的进一步的范围将变得显而易见。然而,应该理解,具体实施方式
和具体示例,尽管指出了本发明的优选实施例,只作为说明,因为通过此具体实施方式
,本发明的精神和范围内的各种修改对于本领域的技术人员来说将变得显而易见。


通过下文仅作为说明给出的,如此不是限制性的详细描述和各个附图,本发明将变得显而易见,其中图1是示出了可以用于实现本发明的示例性实施例的计算设备的图;图2是示出了可与本发明的示例性实施例一起使用的用户代理的图;图3A和;3B各自示出了根据本发明的一个示例性实施例的对应于移动或手持式设备的屏幕上的“触摸半径”的检测到的点击和区域;图4A-4E提供了示出了根据本发明的示例性实施例的方法的流程图;图5A-5C示出了根据示例性实施例的在触摸半径内的链接的扩展和图像(是一个链接);图6A-6E示出了根据示例性实施例的在触摸半径内的链接的扩展和简单表单控件;以及图7A-7E示出了根据示例性实施例的在触摸半径内的链接的扩展和复杂表单控件。在对本发明的详细描述的过程中将详细地描述附图。
具体实施例方式下面的对本发明的详细描述参考了各个附图。在不同附图中使用相同附图标记来表示相同或类似的元件。同样,下面的详细描述并不限制本发明。相反,本发明的范围由所附权利要求书以及其等效内容进行定义。本发明涉及促进用户通过触摸屏界面与用户代理(例如,web浏览器)进行交互的计算机实现的方法和设备。此方法可以实现为用户代理的一部分,以便减少用户代理判断用户打算通过触摸激活显示器上的哪一个交互式元件时所产生的错误。对于此说明书,术语“交互式元件”是指用户可以与其进行交互以访问或输入数据的网页或其他类型的可显示的文档的任何元件。交互式元件可包括,但不仅限于,下列类型超链接或链接,充当链接的图像,简单表单控件(例如,按钮、复选框、单选按钮),或复杂表单控件(例如,编辑字段、下拉列表、列表框)。下面将提供关于这些类型的交互式元件的更多细节。此外,对于此说明书,术语“激活”是指调用交互式元件的基础功能,或改变交互式元件的状态以使它起作用的动作。例如,“激活”可以是指打开访问进一步的资源的链接,点击简单表单控件(例如,复选框或单选按钮),或者可以编辑复杂表单控件/与复杂表单控件进行交互(例如,将编辑字段置入可编辑状态)。图1示出了可以用作用于实现本发明的各方面的环境的一般化计算设备100。根据示例性实施例,构想计算机设备100可以实现为移动或手持式设备,例如,个人数字助理 (PDA)、移动电话等等。然而,可以将本发明的原理应用于诸如台式计算机、膝上型计算机之类的其他类型的计算机设备100,以及本领域技术人员所设想的任何其他类型的计算机设备 100。在图1中,设备100具有各种功能性组件,包括中央处理单元(CPU) 101、存储器 102、通信端口 103、视频接口 104,以及网络接口 105。这些组件通过系统总线106彼此进行
ififn。可包括ROM、RAM、闪存、硬盘驱动器的存储器102,或固定和可移动存储器的任何其他组合,存储系统的各软件组件。存储器102中的软件组件可包括基本输入/输出系统 (BI0Q 141、操作系统142、包括应用程序和设备驱动程序的各种计算机程序143,各种类型的数据144,及诸如宏指令和脚本145之类的其他可执行文件或指令。通信端口 103可以连接到一个或多个本地设备110,如用户输入设备、打印机、媒体播放器、外部存储器设备,以及诸如,例如,全球定位系统接收器(GPS)之类的特殊用途设备。也可以被称为输入/输出端口(I/O)的通信端口 103可以是本地设备110的诸如 USB、PS/2、RS-232、红外线(IR)、蓝牙、打印机端口,或任何其他标准化或专用通信接口之类的端口的任何组合。视频接口设备104连接到显示单元120。根据示例性实施例,显示单元120具有可使显示单元120充当触敏输入设备的触敏屏幕。显示单元120的触敏输入设备方面可以被视为通过通信端口 103进行通信的本地设备110中的一个。此外,对于其中计算设备100 被实现为PDA、移动电话或其他小型便携式设备的示例性实施例,显示器一般将是诸如LCD 显示器之类的集成的显示器。然而,应该显而易见地看出,可以将本发明的原理应用于显示单元120不与计算设备100的其他元件集成的情况,例如,显示单元120是独立监视器的情况。网络接口设备105为设备100提供连接到网络的能力,以便与远程设备130进行通信。在图1中只被示为连接网络接口 105与远程设备130的线路的通信网络,可以是,例如,局域网或因特网。远程设备130原则上可以是具有类似于设备100的通信能力的任何计算设备,但是,通常可以是服务器或提供网络服务的某种其他单元。可以理解,图1中所示出的设备100在其大小,资源,或者组件的物理实现方面不仅限于任何特定配置或实施例。例如,可以将图1中所示出的一个以上的功能组件合并到设备100的单个集成单元中。同样,图1的单一功能组件可以分布到多个物理单元中。当然,也可以存在其他单元或能力。此外,设备100可以是,例如,诸如PC之类的通用计算机, 或个人数字助理(PDA)、或者甚至手机或智能电话。在一示例性实施例中,可以将本发明的各个方面包括到构成作为应用程序安装在设备100上的用户代理或浏览器的组件和/或功能中,或与它们一起使用。图2示出了可以存在于这样的用户代理或浏览器中的若干个模块的示例。模块通常是软件模块,或以其他方式由程序员以软件来实现,并可以由CPU 101执行。然而,图2的任何一个模块也可以被实现为硬件、硬件和软件的组合,或“固件”,如本领域的技术人员所设想的。用户代理或浏览器200向用户呈现用户界面201,该用户界面201可以显示在图1 所示出的显示单元120上。用户界面201可包括地址字段202,用户可以输入或选定他或她希望用户代理200检索的文档或服务的URL。例如,用户可以使用键盘或其他类型的输入设备来在地址字段202中输入URL。地址字段202也可以是显示的链接,并可以根据本发明的原理由用户通过触摸来激活(可另选地,这样的链接也可以使用诸如鼠标之类的指示设备来激活)。或者,在已经由用户代理200加载的文档或脚本的代码中指定URL。在任何情况下,URL都可以由表示与用户代理200(或其一部分)相关联的用户界面201的输入部件的窗口和输入管理器203接收。然后,可以将URL转发到文档管理器204, 该文档管理器204管理作为由URL所标识的文档的一部分接收到的数据。文档管理器204将URL转发到URL管理器205,该URL管理器205命令通信模块 206请求访问所标识的资源。通信模块206可以使用超文本传输协议(HTTP)或诸如HTTPS 或FTP之类的某种其他协议,通过网络从诸如服务器之类的远程设备130访问和检索数据。 通信模块206也可以能够访问存储在本地存储器102中的数据。如果设备100外部的通信需要被加密,例如,如用于访问URL的协议所指定的,加密/解密模块207处理URL管理器205和通信模块206之间的通信。由通信模块206响应于请求而接收到的数据被转发到URL管理器205。然后,URL 管理器205可以使用高速缓存管理器208将接收到的内容的副本存储在本地存储器102 中,其中高速缓存管理器208管理文档和图像高速缓存209。如果以后请求了同一个URL, 则URL管理器205可以从高速缓存管理器208请求它,高速缓存管理器208将从高速缓存 209中检索高速缓存的副本(除非删除了缓存的副本),并将高速缓存的副本转发到URL管理器205。因此,当再次请求同一个URL时,可能不需要从远程设备130再次检索相同数据。URL管理器205将从通信端口 206或高速缓存209接收到的数据转发到解析器210,该解析器210能够解析诸如HTML、XML和CSS之类的内容。然后,取决于内容的类型和特征,被解析的内容可以由作为用于处理文档对象模型(DOM)结构212的模块的 ECMAScript引擎211和/或布局引擎213进行进一步的处理。对检索到的内容的这种处理由文档管理器204进行管理,文档管理器204也可以作为对接收到的内容的处理的结果,将额外的URL请求转发到URL管理器205。这些额外的 URL,可以,例如,指定应该嵌入在由原始URL所指定的文档内的图像或其他额外的文件。当已经处理完表示指定的文档的内容的数据时,它被从文档管理器204转发,以便由呈现引擎214呈现,并显示在用户界面201上。如此所描述的各模块可以在设备100的CPU 101通过系统总线106接收到指令和数据时由CPU 101执行。通信模块206使用网络接口 105与远程设备130进行通信。当然, 可以将图2中各模块的功能集成在少一些较大的模块上。同样,可以将图2中的单个模块的功能分布在或复制到几个模块上。进一步可以理解,尽管上文所描述的用户代理200可以实现为应用程序143,但
8是,用户代理200的一些功能也可以实现为操作系统142的一部分,或者甚至设备100的 BIOS 141的一部分。响应于URL请求而接收到的内容可以是数据144、脚本145或这些数据的组合,如下面所进一步描述的。现在参考图3A和:3B,各自示出了来自用户代理200的示例性屏幕快照300,示出了本发明的原理。具体而言,如每一个屏幕快照300所示,用户界面200正在显示交互式元件305,在此特定示例中,它们是到URI的链接。此外,这些屏幕快照示出了对应于由于用户触摸而由集成到显示单元120中的触摸屏输入设备检测到的点击的位置的点310(用“ + ”表示)(集成的触摸屏输入设备和显示单元120有时将被称为“触敏显示屏幕”,或简称为“显示屏幕”)。如前面所讨论的,常规触摸屏输入设备通常检测手指或笔尖的触摸作为单个点。然而,如在这些附图中进一步示出的,本发明的示例性实施例确定由半径330所定义的检测到的点击的位置310周围的区域320。例如,在图3A中,六个交互式元件305(链接)至少部分地在触摸半径330内(S卩,区域320至少部分地包含六个链接30 。另一方面,在图:3B中,只有一个交互式元件305 (链接)部分地落在触摸半径330内。根据一个示例性实施例,触摸半径330的默认大小可以基于诸如分辨率、每英寸点数(dpi)、屏幕的质量、默认缩放级别等等之类的因素,对于示例性实施例中的每一个设备100分别地确定。如下面参考图4A更详细地讨论的,还可以例如,通过校正技术,针对特定用户进一步修改默认大小。虽然在图3A和;3B的示例性实施例中交互式元件305被示为链接,但是,可以将本发明的原理应用于其他类型的交互式元件,包括,但不仅限于,作为链接的图像,简单表单控件,以及复杂表单控件。下面提供了对这些额外的类型交互式元件305的描述简单表单控件其功能通过用户的单击来调用的表单控件。示例有按钮、复选框, 以及单选按钮。复杂表单控件需要用户作出比单击更复杂的行为的表单控件。示例有编辑字段、 下拉列表,以及列表框。当复杂表单控件处于允许用户编辑它或与它进行交互以调用基础功能的状态时,激活该复杂表单控件。例如,当激活编辑字段时,可以在编辑字段内提供允许用户在其内输入文本的光标。作为另一个示例,当激活下拉列表时,就下拉出一个子元件列表,以便允许用户点击其中一个子元件。对展开交互式元件的示例性方法的描述图4A-4E提供了示出了根据本发明的示例性实施例的用于展开交互式元件的方法的流程图。在描述图4A-4E的方法时,将叙述“展开”交互式元件305。术语“展开”一般是指将显示器上的元件305的尺寸放大到足够大的预定尺寸,以使它容易被手指(或笔尖)击中。然而,根据本发明的一个示例性实施例,如果要展开的元件305已经是等于或大于预定尺寸,则“展开”这类元件305可能不会导致任何进一步的放大,而是可能导致另一种类型的动画或显示效果(例如,突出显示),表明元件305被判断为供用户选择的潜在目标。下面将提供这样的动画或显示效果的进一步描述。交互式元件305的任何这样的尺寸-展开、 动画或显示效果都可以被视为这类元件305的“部分激活”,虽然它不会导致完全激活或调用这类元件305的计划的功能。该方法以用户代理200显示包括一个或多个交互式元件305的一个网页或其他类型的文档起始,如步骤SlO所示。此后,用户可以通过触摸(例如,利用手指或笔尖)触敏显示屏幕120上的元件305,来选定其中一个显示的交互式元件305来进行交互,如步骤S20 所示。如上文所描述的,触敏显示屏幕120可以作为屏幕120上的单个点310处的点击动作来检测此触摸。如此,在步骤S30中确定此点击点的位置。根据一个示例性实施例,用户代理200可以允许用户指定是否启用触摸半径330 内的交互式元件305的展开。例如,用户可以,例如,使用菜单,导航到用户界面201的允许用户打开或关闭根据触摸启用交互式元件305的设置的一部分。在本说明书内,这样的设置被称为“手指触摸”设置。如图4A的步骤S40所示,可以就“手指触摸”设置是打开还是关闭作出判断。如果手指触摸被关闭,如此,不启用根据本发明的原理的交互式元件305的展开, 而执行图4B中所示的用户触摸的常规处理,即,就显示的交互式元件305中的一个是否被点击位置直接击中作出判断(步骤S110),如果是,激活这样的交互式元件305(步骤 S120)。然而,再次参考图4A,如果在步骤S40中手指触摸被打开,则处理可以前进到步骤 S50,在此,确定触敏显示屏幕120上的检测到的触摸位置周围的半径330。如上文所讨论的,触摸半径330的默认大小可以是其中实现了用户代理200的特定设备100特定的,例如,考虑了分辨率、dpi、默认缩放级别和/或其他参数。然而,也可以修改半径330的尺寸,以符合单个用户的特定用途。例如,可以在设备100上为首次使用的用户提供包括配置向导的应用程序,以确定考虑了用户的目标的半径330的最佳尺寸。这样的向导可以要求用户利用他/她的手指(或笔尖)敲击几个点, 并使用可以用来确定最佳尺寸的结果。修改半径330的尺寸的另一示例将是作为可由用户调节的应用程序或设备设置来管理它(例如,使用滑动块),从而允许用户增大或缩小半径 330在展开交互式元件305中的主动性。根据一个示例性实施例,无论是按默认方式设置或被修改以符合用户要求,可以设想,触摸半径330的最佳地确定的大小将平均地检测显示屏幕120上的不超过两个交互式元件305。再次参考图4A,在确定触敏显示屏幕120上的检测到的触摸的点310周围的半径 330之后(步骤S50),在步骤S60中扫描触摸半径330内的区域320,以查找至少部分地在区域320内的任何交互式元件305(例如,链接、图像,或表单控件)。然而,根据一个示例性实施例,由于此扫描发现的交互式元件305可以排除超出屏幕边界之外的任何元件305,以便用户无法看见它们,因为用户尝试选定当前不显示的交互式元件305的可能性不大。本发明的示例性实施例设想,可以取决于用户的偏好,实现交互式元件展开的不同的情况。例如,用户可以被允许打开/关闭“总是在元件附近展开”设置(在图4A中简称为“总是展开设置”)。根据此实施例,当“总是在元件附近展开”被打开时,半径330的被扫描的区域320内发现的所有显示的交互式元件305被展开(作为超出显示边界之外而被排除的那些元件305除外)。然而,可以将“总是在元件附近展开”关闭,以便将交互式元件305的展开限制到产生歧义的情况。具体而言,如果步骤S70判断“总是在元件附近展开”是打开的,则方法根据图4C 进行。
如图4C的步骤S310所示,就是否发现有多个交互式元件305至少部分地在触摸半径330的被扫描的区域320内作出判断。如果是,则展开所有这样的交互式元件305(图 4E的步骤S210),用户可以重新尝试触摸所希望的(展开的)交互式元件305(停止图4E 的S220和S230),如果该触摸成功地击中它,则激活所希望的元件305(图4A的步骤SllO 和 S120)。然而,如果图4C的步骤S310判断没有发现多个交互式元件305至少部分地在触摸半径330内,那么,在步骤S320中就是否发现有哪怕单个交互式元件305至少部分地在半径330内作出判断。如果不,则认为用户不打算利用他/她的触摸来激活交互式元件305 中的任何一个(或没有足够的信息来确定用户的意图),并结束方法。然而,如果发现有单个交互式元件305至少部分地在触摸半径330内,则根据步骤S330,来展开它。在再一个示例性实施例中,如果此单个的交互式元件305被判断为复杂表单控件,则除如步骤S340 和S350所示的那样被展开之外,也可以激活它。可以简单地展开其他类型的交互式元件 305 (链接,带有链接的图像,简单表单控件),如步骤S340和S360所示,可使用户通过根据步骤S370并与图4B的步骤SllO和S120相结合来触摸,再次尝试选定它。下面将参考图5-7提供如何展开不同类型的交互式元件305的具体示例(如果适当的话,进一步激活)。然而,如果“总是在元件附近展开”是关闭的,则可以实施元件展开的不同的情况。 再次参考图4A,如果步骤S70判断“总是在元件附近展开”被关闭,则方法根据图4D进行。实际上,图4D示出了允许不管元件类型如何来激活交互式元件305,而无需首先要求展开以及进一步的用户交互(即,再触摸)的情形。具体而言,当判断关于用户的选定该元件305的意图没有歧义时这样的激活可以根据图4D的情况来进行,如下文所描述的。类似于“总是在元件附近展开”是打开的情况,如果当“总是在元件附近展开”被关闭时有一个以上的交互式元件305至少部分地在触摸半径330内,则所有这类元件305都被展开,无需激活,如图4D的步骤S410与图4E的步骤S210相结合所示。S卩,至于用户打算激活多个元件305中的哪一个有歧义,因此,给用户提供了展开的潜在目标,他/她可以通过触摸从这些潜在的目标进行选择(参见图4E的步骤S220和S230)。再次参考图4D,如果没有发现多个交互式元件305至少部分地在触摸半径330的区域320内,则步骤S420判断是否发现单个交互式元件305至少部分地在半径330内。如果不,则认为用户不打算用他/她的触摸激活交互式元件305中的任何一个(或者,没有足够的信息来确定用户的意图),并结束方法。然而,如果发现单个交互式元件305至少部分地在触摸半径330内,那么,方法前进到步骤S430。根据一个示例性实施例,展开诸如复杂表单控件之类的交互式元件305可能是有利的,即使可以判断用户没有歧义地打算选定这类元件305。这是因为对于用户来说更容易编辑或以其他方式与复杂表单控件进行交互,如果它处于展开状态。如此,根据图4D的步骤S430和S440,当发现一个复杂表单控件是至少部分地在触摸半径330内的唯一交互式元件305时,则展开它,不管它是否被用户的触摸直接击中。根据再一个示例性实施例,如步骤S450所示,如果判断复杂表单控件是至少部分地在触摸半径330内的唯一交互式元件 305,则也可以在展开之后激活该复杂表单控件。接下来,如果图4D的步骤S460判断至少部分地在触摸半径330内的交互式元件305在点击点310被直接击中,则可以判断没有歧义,因为用户大概打算激活他/她实际触摸的交互式元件305。如此,可以根据步骤S470,激活交互式元件305。还设想在展开的状态下激活元件305可以有多个优点。如此,步骤S470可被实现为在刚刚激活元件305之前展开以前未展开的元件305。例如,如果一个链接将在步骤S460中激活,则该链接可以首先被展开,然后,立即被激活,无需用户干预。此外,步骤S470可以另外执行可选的动画,向用户示出元件305被激活(如下文更详细地描述的)。然而,如果图4D的步骤S460判断在触摸半径330内的交互式元件305未被点击点310直接击中,则方法转到步骤S480。在此情况下,判断关于用户的意图存在歧义,应该展开元件305。如此,该方法前进以展开元件305 (步骤S480),并可使用户触摸展开的元件 305,以便激活它(图4D中的步骤S490和S500,与图4B的步骤SllO和S120相结合)。现在将提供关于图4A-4E的上文所描述的方法将是图3A和中所示出的特定情况的评论。图3A所示出的情况是六个链接(“Nord-Trtpndelag ,““Oppland, “ “ Oslo, “ “ Sogn og Fjordane, “ “ Telemark,“和"Vestfold") 至少部分地在触摸半径330的被扫描的区域320内。根据图4A-4D的上文所描述的方法, 所有这六个链接将被展开,不管“总是在元件附近展开”是打开还是关闭。图3B的情况是发现只有一个链接(“(pstfold”)部分地在半径330的区域320内的情况。在此情况下, 根据上文所描述的方法,因为此链接未曾被点击点310直接击中,此链接将被展开,而不管 “总是在元件附近展开”是打开还是关闭。应该注意,图4A-4D只用于描述用于实现本发明的原理的示例性实施例。如此,在不偏离本发明的精神或范围的情况下,可以进行各种修改,例如,切换各个步骤的顺序,省略某些步骤等等。描述了图4A-4D中所示出的示例性实施例,下面将提供关于特定类型的交互式元件对于某些情况如何展开和激活的示例。此后,将提供关于可以与已经描述的本发明的示例性实施例相结合地实现的附加特征的描述。展开的元件的布局根据一个示例性实施例,下列规则中的一个或多个可以应用于将展开的元件305 定位于显示单元120的屏幕上时。当根据图4A-4E的上文所描述的方法展开一个或多个交互式元件305时,将所产生的展开的元件305尽可能地定位在靠近它们的原始显示位置附近。同一个垂直显示行上的多个展开的元件305可以稍稍移动到足以分别从它们的中心点离开,如此,它们不重叠。然后,可以作为带有例如对应于足够大以包含所有展开的元件的虚构的矩形的边的单个单元来移动同一个显示行上的一个或多个展开的元件305。然后,可以将下列规则应用于此单元/矩形1)如果该单元中的一个或多个展开的元件305被完全定位在触敏显示屏幕120的视口内,则不需要进一步的重新定位;2)如果该单元的某个部分被定位在视口外面,但是,该单元对于每一个展开的元件足够小难以置于视口内,移动该单元,以便每一个展开的元件305被定位在该视口内;以及3)如果移动该单元,则尽可能地只移动得使展开的元件305可见,而不会导致网页或文档的内容超出视口。然而,根据替换的示例性实施例,可以将对应于一个或多个展开的元件的单元/ 矩形拆分成多个子单元(或子矩形)。例如,根据此替换实施例,下列情形规则可以适合于要展开的一个或多个链接,以便使初始布局和校准保持原样1)情形-显示在一行上的一个链接将被展开,展开的链接的宽度将小于或等于视口(屏幕)的宽度·如果链接在它被展开之前在视口内可见,展开的链接可以被显示为尽可能地靠近展开之前的链接的原始位置;·如果链接在它被展开之前只部分地在视口内,整个展开的链接可以被显示在视口内。如果展开之前的链接的起始在视口外部,则可以将展开的链接的起始置于视口的左边缘。如果展开之前的链接的末尾在视口外部,则可以将展开的链接的末尾置于视口的右边缘。2)情形-显示在一行上的一个链接将被展开,展开的链接的宽度将大于视口宽度可以将展开的链接置于视口的左边缘。3)情形-显示在同一行上的多个链接将被展开,展开的链接的宽度的总和将小于或等于视口宽度所有展开的链接都可以显示在同一行上。4)情形-显示在同一行上的两个链接将被展开,展开的链接的宽度的总和将大于视口宽度展开的链接可以显示在两个单独的行上,两个单独的行垂直地以展开之前的链接的原始行为中心,可以应用如前所述的情形规则1)和2)以显示每一个展开的链接。5)情形-显示在同一行上的多个链接将被展开,展开的链接的宽度的总和将大于视口宽度可以将对应于展开的链接的矩形分为两个子矩形,这两个子矩形可以显示为垂直地以原始矩形为中心的两个层叠的矩形。如果子矩形不在视口范围内,则可以将它再分为两个子矩形,可以将其中的一个移动到上方或下方的新行。可以重复此过程,直到所产生的子矩形被置于视口范围内,并且可以应用情形规则1),或者直到所产生的子矩形只包括一个不在视口范围内的链接,并且可以应用情形规则2)。6)情形-显示在两行上的一个链接将被展开,并且链接周围的矩形不重叠任何其他链接可以根据如前所述的情形规则1)展开和定位整个矩形。7)情形-显示在两行上的一个链接(链接#1)将被展开,其矩形与也被展开的其他链接(链接#2. . . #n)重叠可以将矩形拆分成至少三个子矩形,对于第一和第二行上的链接#1的部分,分别两个子矩形,对于链接#2. . . #n,至少一个子矩形。展开的链接#2. . . #n 的子矩形可以移动到展开的链接#1的子矩形下面。此外,如果点击点310相对于第一行更接近于第二行,则可以移动展开的链接的子矩形,以便展开的链接#1的第一行的子矩形更接近于点击点310。展开禾Π激活Φ寺定孝型的交百.式元件链接根据一个示例性实施例,链接可以通过放大来展开,以便展开的链接的宽度和高度两者都至少是预定尺寸,例如,7. 6毫米。根据此实施例,将高度和宽度中的较小的放大到展开的尺寸参数(例如,7.6毫米),而同时按比例展开高度和宽度中的另一个以保持相同的高宽比。当然,7. 6毫米尺寸参数只是示例性的,并可以根据显示单元120的尺寸、类型或质量增大或缩小,或者也可以由用户根据他/她的偏好来进行设置。
13
此外,如果链接的高度和宽度两者都大于展开的尺寸参数(例如,7. 6毫米),则可能不进一步放大链接。在此情况下,可以简单地通过应用示出了它被判断是供用户选择的潜在目标的动画和/或显示效果,“展开”链接,如下文更详细地描述的。根据一个示例性实施例,当激活一个链接(在展开的或者非展开的状态)时,可选的动画可以伴随这样的激活,以向用户示出该链接正在被打开,如下面比较详细地描述的。在再一个示例性实施例中,当激活展开的链接时,这可能导致任何其他展开的交互式元件305被设置回到其普通显示状态(即,导致扩展被取消)。同样,当在“总是在元件附近展开”设置关闭的情况下激活当前非展开的链接时 (例如,根据图4D中的步骤S460),可以首先展开链接,此后立即激活。此外,还构想根据本发明展开的任何链接都可以保留它们的原始样式。即,以显示的网页或文档的html代码或样式表定义的链接的样式可以保持原样。然而,在进一步的示例性实施例中,当链接被展开时,可以对链接进行某些可视的修改。例如,可以删除与链接相关联的下划线。同样,展开的链接被给予“换肤”边界(即,可以被给予自定义的图形外观)。此外,当展开包含文本和图像两者的链接时,链接内的图像可以与文本一起展开。作为链接的图像根据一个示例性实施例,对于充当图像和链接两者的交互式元件305(在本说明书内简称为“作为链接的图像”),这类元件305 —般可以用与链接相同的方式展开和/或激活。例如,当作为链接的图像的尺寸在高度和宽度维度方面等于或大于预定的展开尺寸时,可以通过简单地利用打算示出它是供用户选择的潜在目标的动画和/或其他显示效果来显示图像,展开这样的图像。另一方面,如果作为链接的图像的高度或者宽度两者中任一个的尺寸小于预定尺寸,当被展开时,可以将其放大,以便高度和宽度中的较小的那一个是预定尺寸,而同时维护相同的高度/宽度比。根据一个示例性实施例,作为链接的图像的展开的预定的大小可以与其他类型的链接相同或者不同。图5A-5C示出了在触摸半径内的交互式元件305的展开的示例,包括链接以及作为链接的图像。图5A示出了在用户触摸显示单元120之前通过用户代理200显示的三个交互式元件305。图5A中的这些元件305包括带有图像305A的链接,只带有文本305B的链接,以及作为链接305C的图像。根据图5B,在用户通过触摸尝试他/她的选择之后,发现所有三个元件305A、 305B,以及305C至少部分地在触摸半径330内,如此,导致所有三个元件305A、305B,以及 305C根据本发明的上文所描述的原理展开(不管“总是在元件附近展开”是打开还是关闭)。图5C示出了展开这些三个元件305A、305B,以及305C的结果。具体而言,图5C示出了所有三个元件被放大,并被提供了可换肤的边界的显示效果。从图5C可以看出,这示出了其中作为链接305C的图像被给予比其他类型的链接305A和305B更高的展开比例的特定实施例。表单控件根据一个示例性实施例,表单控件的展开可以用与链接基本上相同的方式执行, 虽然复杂表单控件的激活可以不同。
如上文所讨论的,根据本发明可以展开和/或激活的交互式元件305的类型可包括表单控件,具体而言,简单和复杂的表单控件。在展开和激活过程中简单表单控件的行为可以不同于复杂表单控件的行为,如下面更详细地讨论的。简单表单控件可以在网页或文档中显示的简单表单控件的示例包括按钮、复选框,以及单选按钮。根据一个示例性实施例,按钮一般与上文对于链接展开和激活的所描述的表现得相同。然而,在按钮和链接的行为之间可能有某些差异,例如,在展开程度,以及伴随的动画和/或显示效果方面的差异。类似地,复选框和单选按钮可能在它们根据本发明的原理被展开时表现出与链接类似的行为,只是可能会在展开程度以及伴随的动画和/或显示效果方面存在一些差异。然而,图6A-6E示出了根据本发明的一个示例性实施例的当复选框被激活时该复选框的行为。具体而言,图6A示出了由用户代理200显示的链接305D以及复选框(带有文本)305E。如图6B所示,当元件305D和305E两者至少部分地在半径330内时,它们两者都以与图6C所示出的相同的方式展开。根据图6D,用户通过触摸进行选择,以激活展开的复选框305E,而图6E示出了复选框305E的所产生的激活。如图6E所示,对复选框305E的激活导致复选框305E被切换到不同的状态,即,其中显示了复选标记。(注意因为复选框305E的行为是在激活时在多个状态之间切换,如果复选框305E最初包含了图6A中的复选标记,它将被切换到图6E中的没有复选标记的状态)。此外,如图6E所示,激活复选框305E导致它还原到其原始非展开的状态。在再一个示例性实施例中,在激活时单选按钮的行为(未示出)可以类似于上文参考图6A-6E所描述的复选框的行为。复杂表单控件复杂表单控件的示例包括编辑字段、列表框,以及下拉列表。在一示例性实施例中,复杂表单控件可以具有两个展开的状态未激活和已激活。在未激活状态,用户只能选择它们,而不能编辑或与它们进行交互。可另选地,用户可以在激活状态编辑或进一步与复杂表单控件进行交互。编辑字段编辑字段是复杂表单控件。编辑字段被展开,使它们更大,更容易交互(例如,允许用户利用手指或笔尖将光标置于编辑字段中的特定位置)。当编辑字段被展开时,用户可以使用与用于取消展开的链接相同的方法取消展开。图7A-7E示出了当关于是编辑字段还是另一交互式元件305正在被用户触摸的选择有歧义时编辑字段的行为。具体而言,图7A示出了网页或文档包括两个交互式元件305 (编辑字段305F和链接305G)的情况。根据图7B,在用户首先通过触摸尝试选择这些元件305F和305G中的一个之后,关于用户是打算点击编辑字段305F还是链接305G是有歧义的,因为两者都在触摸半径330内。因此,图7C示出了编辑字段305F和链接305G两者都被展开,展开的编辑字段305F保持在未激活状态,其中没有光标显示(这是由于图4E的步骤S210被执行所造成的)。然而,图7D示出了当编辑字段305F处于展开但是未激活状态时用户点击该编辑字段 305F。根据一个示例性实施例,并如图7E所示,用户对展开的但是未激活的编辑字段305F 的点击将导致其他交互式元件305 (在此具体示例中是链接305G)的展开被取消,并导致编辑字段305F从未激活状态进入显示了光标并且编辑字段305F可以被编辑的激活状态。同样,根据如图7E所示的一个示例性实施例,编辑字段305F的激活还可以进一步导致它展开为视口的全宽,使得用户更容易与它进行交互。下拉列表下拉列表是另一种类型的复杂表单控件。根据本发明的原理的下拉列表的展开使它们更大,更容易交互。当下拉列表被展开时,用户可以使用与用于取消展开的链接相同的方法取消展开。根据一个示例性实施例,如果因为下拉列表和另一交互式元件305都至少部分地在触摸半径330内使得关于用户是打算点击下拉列表还是另一交互式元件305有歧义,则展开两种元件。在此情况下,下拉列表在未激活状态下(即,关闭)展开。如果在其展开但是未激活状态下再次点击下拉列表,它将打开或“下拉”,并且还可以进一步展开到用户交互起来更舒服的尺寸。本发明的额外的示例件特征下面将提供关于可以与已经描述的本发明的示例性实施例相结合地实现的附加特征的进一步的描述。动画根据本发明的一个示例性实施例,动画或显示效果可以可任选地伴随交互式元件 305的每一次展开和/或激活。例如,交互式元件305的实际展开可以通过将元件305的尺寸逐步增大到其最后展开的尺寸,而不是突然将其尺寸从原始非展开的尺寸切换到展开的尺寸来动画化。交互式元件305的展开的状态的取消也可以动画化,S卩,元件305可以被示为逐步缩小到其原始非展开的尺寸。当交互式元件305的展开需要展开的元件305被移动以置于视口内时,也可以产生动画。例如,展开的元件305可以被示为逐步移动到一个置于视口内的位置。在进一步的示例性实施例中,展开的链接的激活或打开可以可任选地伴随有动画。默认行为可以是“爆炸”,其中,链接被进一步放大,变得越来越大,直到它快速地淡出 (好像它爆炸了)。然而,此默认行为可以不同,以便在平台上与用于激活/打开链接或其他应用程序的标准行为一致。在进一步的示例性实施例中,当展开一个或多个交互式元件305时,可以可任选地提供变灰网页或文档的其余部分(包括不在触摸半径330内的交互式元件,以及其他内容)的显示效果。类似地,当激活交互式元件305时,这还可以进一步导致处于展开状态的其他交互式元件305不仅回到它们的非展开状态,而且还变灰,带有变暗的背景的其余部分(可选)。滚动到取消展开如上文参考图4A的步骤S60所描述的,本发明的示例性实施例只扫描触摸半径 330的区域320,以发现用户看得见,即不在屏幕边界外面的那些交互式元件305。如此,用户代理200的用户界面201可以提供滚动条和/或拖滚功能,以使用户将交互式元件305 从外面移到屏幕120的查看区域内,以便可以选择它们。然而,如果根据本发明交互式元件305在查看区域被展开,用户可以取消其展开的状态,并通过滚动将元件305复位到其原始大小和/或状态。具体而言,如果用户执行导致展开的元件305不再在视口内的滚动操作,这可以足以取消交互式元件305的展开状态。取消展开的其他方式根据本发明的进一步的示例性实施例,交互式元件305的展开也可以通过下列方式来取消·点击展开的链接,从而打开或激活链接;·点击简单表单控件,导致简单表单控件激活,S卩,执行适当动作;·点击网页或文档的变灰区域中展开的元件外面的任何位置;·在链接或简单表单控件被展开的情况下,等待超时发生,即,预定不活动时间段, (然而,超时可能不适用于处于展开并且激活状态的复杂表单控件,因为它们一般要求用户交互以确认任务的完成);·点击取消展开的“取消”软键/按钮(当展开多个交互式元件305时,或当展开不是复杂表单控件的单个元件305时,可以显示这样的“取消”软键/按钮);或 点击要求用户交互以确认任务的完成的复杂表单控件的“完成”软键/按钮(当有处于展开和激活状态的单个复杂表单控件时,可以显示这样的“完成”软键/按钮)。如此描述了本发明,显然,相同的可以在许多方面有变化。这样的变化被视为不偏离本发明的精神和范围,对于所属领域技术人员显而易见的是,所有这样的修改都包括在下列权利要求的范围内。
权利要求
1.一种通过利用手指或笔尖型设备来触摸显示屏幕的触摸界面部分来选定带有触摸界面的显示屏幕上的项目的方法,该方法包括使用可操作地连接到显示屏幕的触摸界面的处理器执行下列操作 确定与接触区域的中心相关联的预定触摸半径,该接触区域由触摸界面通过与手指或笔尖型设备进行的交互来检测;检测激活的屏幕区域,该激活的屏幕区域对应于与激活触摸界面的选择设备所定义的触摸点相关联的触摸半径内包含的屏幕的一部分;标识显示屏幕上的至少部分地包含在触摸半径内的可选择项目; 通过改变每一个所标识的可选择项目被显示的方式,部分地激活所标识的可选择项目供进行确认选择,响应于由触摸界面检测到选定了该特定的部分地激活的可选择项目的另一触摸点,完全激活部分地激活的可选择项目;以及去激活未被选择用于完全激活的任何部分地激活的可选择项目。
2.如权利要求1所述的方法,其中处理器通过放大项目的显示尺寸,部分地激活所标识的可选择项目。
3.如权利要求2所述的方法,其中,在所标识的可选择项目在部分激活之前已经以大于或等于预定尺寸的尺寸显示的情况下,处理器通过显示与此联系的动画或显示效果,部分地激活标识的可选择项目。
4.如权利要求2所述的方法,其中,还包括伴随所标识的可选择项目的显示尺寸的放大,显示动画。
5.如权利要求1所述的方法,其中,如果只有一个可选择项目被标识为至少部分地在与检测到的触摸点相关联的触摸半径内如果所标识的可选择项目被所检测到的触摸点击中,则所标识的可选择项目被完全激活,无需进行确认选择,以及如果所标识的可选择项目没有被所检测到的触摸点击中,则所标识的可选择项目被部分地激活,使得需要基于另一触摸点的确认选择来完全激活所标识的可选择项目。
6.如权利要求1所述的方法,其中,显示屏幕显示网页,且所标识的可选择项目中的至少一个是超链接。
7.一种设备,包括具有被配置成检测由手指或笔尖型设备与显示屏幕的接触的触摸界面的显示屏幕; 可操作地连接到触摸界面的处理器被编程为执行下列操作配置触摸界面的参数,以设置与接触区域的中心相关联的预定触摸半径,该接触区域由触摸界面通过与手指或笔尖型设备进行的交互来检测;检测激活的屏幕区域,该激活的屏幕区域对应于与激活触摸界面的选择设备所定义的触摸点相关联的触摸半径内包含的屏幕的一部分;标识显示屏幕上的至少部分地包含在触摸半径内的可选择项目; 通过改变所标识的可选择项目被显示的方式,部分地激活所标识的可选择项目供进行确认选择;响应于由触摸界面检测到选定了该特定的部分地激活的可选择项目的另一触摸点,完全激活部分地激活的可选择项目;以及去激活未被选择用于完全激活的任何部分地激活的可选择项目。
8.如权利要求7所述的设备,其中处理器通过放大项目的显示尺寸,部分地激活所标识的可选择项目。
9.如权利要求8所述的设备,其中,在所标识的可选择项目在部分激活之前已经以大于或等于预定尺寸的尺寸显示的情况下,处理器通过显示与此联系的动画或显示效果,部分地激活标识的可选择项目。
10.如权利要求8所述的设备,其中,显示屏幕伴随所标识的可选择项目的显示尺寸的放大,显示动画。
11.如权利要求7所述的设备,其中,如果只有一个可选择项目被标识为至少部分地在与检测到的触摸点相关联的触摸半径内如果所标识的可选择项目被所检测到的触摸点击中,则处理器导致所标识的可选择项目被完全激活,无需进行确认选择,以及如果所标识的可选择项目没有被所检测到的触摸点击中,则处理器导致所标识的可选择项目被部分地激活,使得需要基于另一触摸点的确认选择来完全激活所标识的可选择项目。
12.如权利要求7所述的设备,其中,显示屏幕显示网页,且所标识的可选择项目中的至少一个是超链接。
13.如权利要求7所述的设备,其中,所述设备是移动电话或手持式设备。
14.一种在其上实现了程序的计算机可读取的存储介质,所述程序当被计算机执行时, 导致它执行一种通过利用手指或笔尖型设备来触摸显示屏幕的触摸界面部分来选定带有触摸界面的显示屏幕上的项目的方法,该方法包括配置触摸界面的参数,以设置与接触区域的中心相关联的预定触摸半径,该接触区域由触摸界面通过与手指或笔尖型设备进行的交互来检测;检测激活的屏幕区域,该激活的屏幕区域对应于与激活触摸界面的选择设备所定义的触摸点相关联的触摸半径内包含的屏幕的一部分;标识显示屏幕上的至少部分地包含在触摸半径内的可选择项目;通过改变所标识的可选择项目被显示的方式,部分地激活所标识的可选择项目供进行确认选择;响应于由触摸界面检测到选定了该特定的部分地激活的可选择项目的另一触摸点,完全激活部分地激活的可选择项目;以及去激活未被选择用于完全激活的任何部分地激活的可选择项目。
15.如权利要求14所述的计算机可读取的存储介质,其中部分地激活步骤通过放大项目的显示尺寸,部分地激活所标识的可选择项目。
16.如权利要求15所述的计算机可读取的存储介质,其中,在所标识的可选择项目在部分激活之前已经以大于或等于预定尺寸的尺寸显示的情况下,部分地激活步骤通过显示与此联系的动画或显示效果,部分地激活标识的可选择项目。
17.如权利要求15所述的计算机可读取的存储介质,其中,该方法还包括伴随所标识的可选择项目的显示尺寸的放大,显示动画。
18.如权利要求14所述的计算机可读取的存储介质,其中,如果只有一个可选择项目被标识为至少部分地在与检测到的触摸点相关联的触摸半径内如果所标识的可选择项目被所检测到的触摸点击中,则所标识的可选择项目被完全激活,无需进行确认选择,以及如果所标识的可选择项目没有被所检测到的触摸点击中,则所标识的可选择项目被部分地激活,使得需要基于另一触摸点的确认选择来完全激活所标识的可选择项目。
19.如权利要求14所述的计算机可读取的存储介质,其中,在显示屏幕上显示网页,并且所标识的可选择项目中的至少一个是超链接。
全文摘要
一种通过利用手指或笔尖型设备来触摸显示屏幕的触摸界面部分来选定带有触摸界面的显示屏幕上的项目的方法和设备。检测屏幕上的触摸点,并确定相对于该触摸点的触摸半径。当检测到可选择项目至少部分地显示在触摸点的触摸半径内时,通过改变它们的显示方式,来部分地激活它们。在检测到选定了部分地激活的项目的另一触摸点时,该项目被完全激活,去激活其他部分地激活的项目。
文档编号G06F3/023GK102197350SQ200980141689
公开日2011年9月21日 申请日期2009年9月9日 优先权日2008年9月10日
发明者G·琼斯多蒂尔 申请人:Opera软件股份公司

最新回复(0)