首页> 中国专利> 动态地改变用于web应用的用户界面及相关联的方法

动态地改变用于web应用的用户界面及相关联的方法

摘要

计算系统包括服务器和客户端计算设备。服务器包括web应用和与web应用相关联的锚定义层。客户端计算设备由最终用户操作并且包括显示器和本机应用,该本机应用包括用于在定制模式下访问web应用的嵌入式浏览器。定制模式允许显示网页之一以及可以基于与显示网页对应的锚定义层所允许的内容来定制的锚,并且允许由最终用户定制显示网页上的锚以定义用于显示网页的锚定制层。在web应用的正常使用中,锚定制层在对应的网页被显示之前被应用于对应的网页,以便显示所定制的网页而不重新设计网页本身。

著录项

  • 公开/公告号CN113227972A

    专利类型发明专利

  • 公开/公告日2021-08-06

    原文格式PDF

  • 申请/专利权人 茨特里克斯系统公司;

    申请/专利号CN201980085599.4

  • 申请日2019-09-13

  • 分类号G06F9/451(20060101);G06F16/957(20060101);G06F16/958(20060101);

  • 代理机构72001 中国专利代理(香港)有限公司;

  • 代理人刘茜璐;周学斌

  • 地址 美国佛罗里达州

  • 入库时间 2023-06-19 12:07:15

说明书

技术领域

本公开涉及web应用,并且更具体地,涉及通过允许用户动态地改变web应用的网页的布局来增强用户体验。

背景技术

web应用是相当静态地设计的,其中,用户界面组件布局是由软件供应商设计的。交互设计者通常基于一组标准角色和一组标准交互模式来设计应用。然而,并非所有用户都是相同的或者具有用于特定应用的相同工作流,并且通常需要定制体验的方式。

这对于反复执行相同任务的任务工作者来说尤其重要,其中,界面的定制布局可显著提高生产率。定制布局可以消除屏幕上的不必要组件,或者可以改变界面组件的顺序和外观。存在几种类型的定制,包括消除屏幕上的组件、改变组件的顺序和/或位置、以及改变组件的外观和感觉。

响应式web设计(RWD)是一种基于设备分辨率/形状因子来呈现内容的方法。因此,具有响应性web设计的网页的布局可以取决于显示器的形状因子而改变。布局适应于计算设备的查看环境。浏览器可以例如以如百分比的相对单位而不是如像素的绝对单位来调整网页的不同元素的大小。

然而,大多数解决方案仅提供定制组件的样式表(即,外观和感觉)的能力和/或具有配置屏幕上组件的布局的硬编码能力。对于现有的web应用,很难定制在当今的浏览器技术中使用的UI。

发明内容

一种计算系统包括服务器和由最终用户操作的客户端计算设备。服务器包括web应用和与web应用相关联的锚定义层,所述锚定义层标识显示在web应用的网页上的哪些锚点可以由最终用户来定制。每个锚定义层对应于特定网页。

客户端计算设备包括显示器和本机应用,该本机应用包括用于在定制模式中访问web应用的嵌入式浏览器。定制模式允许显示至少一个网页以及可以基于与显示网页对应的锚定义层所允许的内容而被定制的锚点,并且允许最终用户定制显示网页上的锚点以定义用于显示网页的锚定制层。在退出定制模式后并且在web应用的正常使用中,锚定制层在对应的网页被显示之前被应用于对应的网页,以便为最终用户显示定制的网页,而不重新设计网页本身。

计算系统还包括由用户操作的第二客户端计算设备。例如,用户可以是管理员。第二客户端计算设备可以包括显示器和本机应用,该本机应用包括用于在编辑模式中访问web应用的嵌入式浏览器。编辑模式允许分析网页的元素以标识锚点、显示网页以及所标识的锚点、以及基于对显示网页上的每个锚点可用的用户定制选项来确定允许由最终用户定制的内容。对用于显示网页的定制可用的所有锚点定义了与显示网页相关联的锚点定义层。

计算系统还可以包括企业服务器,其中,第二客户端计算设备向企业服务器登记,并且其中,锚定义层作为用于web应用的发布资源元数据的一部分而存储在企业服务器上。

用于用户的定制选项包括标记要对最终用户隐藏的所选锚点、以及标记要由最终用户可用于定制的所选锚点。

用于可用于定制的每个所选锚点的定制选项包括以下中的至少一个:将锚点标记为可隐藏;将锚点标记为可调整大小的;将锚点标记为源,这意味着锚点可以由最终用户从其当前位置移动到网页上的另一位置;将锚点标记为目标,这意味着锚点可以接受源锚点的定位,其继而使得目标锚点被定位在源锚点初始定位的地方;以及将锚点标记为拼块,这意味着当由最终用户在商店视图(store view)中发布时,锚点将作为用于web应用的活拼块(live tile)而出现。

锚定义层可以作为用于web应用的发布资源元数据的一部分而存储在服务器上。锚定制层可存储在客户端计算设备上。

用于最终用户的针对可以被定制的每个锚点的定制选项包括以下各项中的至少一项:隐藏锚点;调整锚点的大小;重新定位锚点;以及将锚点与其他锚点分组在一起。

计算系统还可以包括企业服务器,其中,客户端计算设备向企业服务器登记,并且其中,锚定制层可以被高速缓存在企业服务器上。

定制模式还允许用标记来对定制锚点打标签,其中,标签和定制被保存为可以应用于不同网页的模式,以供最终用户基于具有用相同标记打标签的锚点的不同网页来定制。不同网页的定制对应于与打标签的锚点相关联的定制。

另一方面针对一种用于操作如上所述的计算系统的方法。该方法包括由最终用户操作客户端计算设备以便在定制模式中经由嵌入式浏览器访问web应用。定制模式允许显示至少一个网页以及可以基于与显示网页对应的锚定义层所允许的内容而被定制的锚点,并且允许最终用户定制显示网页上的锚点以定义用于显示网页的锚定制层。在退出定制模式后并且在web应用的正常使用中,锚定制层在对应的网页被显示之前被应用于对应的网页,以便为最终用户显示定制的网页,而不重新设计网页本身。

又一方面针对一种用于操作包括本机应用的客户端计算设备的非暂时性计算机可读介质,所述本机应用包括嵌入式浏览器,客户端计算设备是包括服务器的计算系统的一部分,所述服务器包括web应用和与web应用相关联的锚定义层,所述锚定义层标识在web应用的网页上显示的哪些锚点可以由最终用户来定制,其中,每个锚定义层对应于特定网页。非暂时性计算机可读介质具有用于使客户端计算设备执行如上所述的步骤的多个计算机可执行指令。

附图说明

图1是其中可以实现本公开的各个方面的计算设备的网络环境的框图;

图2是对于实施图1所示的客户机或远程机的实施例有用的计算设备的框图;

图3是其中可以实现本公开的各个方面的允许最终用户使用锚定制层来定制web应用的网页的计算系统的框图;

图4是示出用于操作图3所示的计算系统的方法的一般性流程图;

图5-10是来自图3中所示的管理员的客户端计算设备的屏幕截图,其中,标识了锚点并定义了用于web应用的锚定义层;

图11-28是来自图3所示的最终用户的客户端计算设备的屏幕截图,其中,锚点被定制以定义锚定制层。

具体实施方式

本说明书是参照附图进行的,其中,示出了示例性实施例。然而,可以使用许多不同的实施例,因此,本说明书不应被解释为限于本文阐述的特定实施例。相反,提供这些实施例以使得本公开将是彻底和完整的。相同的数字始终指代相同的元素。

如本领域技术人员在阅读以下公开内容时将认识到的,本文描述的各个方面可以体现为设备、方法或计算机程序产品(例如,具有用于执行所叙述的操作或步骤的计算机可执行指令的非暂时性计算机可读介质)。因此,这些方面可以采取完全硬件实施例、完全软件实施例、或组合软件和硬件方面的实施例的形式。

此外,这样的方面可以采取由一个或多个计算机可读存储介质所存储的计算机程序产品的形式,该计算机可读存储介质具有在存储介质中或存储介质上体现的计算机可读程序代码或指令。可以利用任何合适的计算机可读存储介质,包括硬盘、CD-ROM、光存储设备、磁存储设备和/或其任何组合。

首先参考图1,其中可以实现本公开的各个方面的非限制性网络环境101包括一个或多个客户机102A-102N、一个或多个远程机106A-106N、一个或多个网络104、104'、以及安装在计算环境101内的一个或多个装置108。客户机102A-102N经由网络104、104'与远程机106A-106N通信。

在一些实施例中,客户机102A-102N经由中间装置108与远程机106A-106N通信。所示的装置108位于网络104、104'之间,并且可以被称为网络接口或网关。在一些实施例中,装置108可以作为应用传送控制器(ADC)来操作,以向客户端提供对在数据中心、云中部署的或者作为软件即服务(SaaS)跨一系列客户端设备传送的业务应用和其他数据的访问,和/或提供诸如负载平衡等之类的其他功能。在一些实施例中,可以使用多个装置108,并且可以将(一个或多个)装置108部署为网络104和/或104'的一部分。

客户机102A-102N通常可以被称为客户机102、本地机102、客户端102、客户端节点102、客户端计算机102、客户端设备102、计算设备102、端点102或端点节点102。远程机106A-106N通常可被称为服务器106或服务器群106。在一些实施例中,客户端设备102可以具有充当寻求访问由服务器106提供的资源的客户端节点以及充当为其他客户端设备102A-102N提供对托管资源的访问的服务器106的能力。网络104、104'通常可以被称为网络104。网络104可以被配置成有线和无线网络的任何组合。

服务器106可以是任何服务器类型,诸如例如:文件服务器;应用服务器;web服务器;代理服务器;装置;网络装置;网关;应用网关;网关服务器;虚拟化服务器;部署服务器;安全套接字层虚拟专用网(SSL VPN)服务器;防火墙;web服务器;执行活动目录的服务器;或者执行提供防火墙功能、应用功能或负载平衡功能的应用加速程序的服务器。

服务器106可以执行、操作或以其他方式提供应用,所述应用可以是以下中的任何一个:软件;程序;可执行指令;虚拟机;管理程序;web浏览器;基于web的客户端;客户端-服务器应用;瘦客户端计算客户端;ActiveX控件;Java小应用;与因特网协议语音(VoIP)通信相关的软件,如软IP电话;用于流式传输视频和/或音频的应用;用于促进实时数据通信的应用;HTTP客户端;FTP客户端;Oscar客户端;Telnet客户端;或任何其他可执行指令集。

在一些实施例中,服务器106可执行远程呈现客户端或其他客户端或程序,其使用瘦客户端或远程显示协议来捕获由在服务器106上执行的应用生成的显示输出,并将应用显示输出发送到客户端设备102。

在又其他实施例中,服务器106可以执行虚拟机,所述虚拟机向客户端设备102的用户提供对计算环境的访问。客户端设备102可以是虚拟机。虚拟机可以由例如管理程序、虚拟机管理器(VMM)或服务器106内的任何其他硬件虚拟化技术来管理。

在一些实施例中,网络104可以是:局域网(LAN);城域网(MAN);广域网(WAN);主公共网络104;以及主专用网络104。另外的实施例可以包括移动电话网络的网络104,其使用各种协议在移动设备之间通信。对于WLAN内的短距离通信,协议可以包括802.11、蓝牙和近场通信(NFC)。

图2描绘了对于实施客户端设备102或服务器106的实施例有用的计算设备100的框图。计算设备100包括一个或多个处理器103、易失性存储器122(例如,随机存取存储器(RAM))、非易失性存储器128、用户界面(UI)123、一个或多个通信接口118和通信总线150。

非易失性存储器128可以包括:一个或多个硬盘驱动器(HDD)或其他磁或光存储介质;一个或多个固态驱动器(SSD),诸如闪存驱动器或其他固态存储介质;一个或多个混合磁性和固态驱动器;和/或一个或多个虚拟存储卷,诸如云存储,或这样的物理存储卷和虚拟存储卷或其阵列的组合。

用户界面123可以包括图形用户界面(GUI)124(例如,触摸屏、显示器等)和一个或多个输入/输出(I/O)设备126(例如,鼠标、键盘、麦克风、一个或多个扬声器、一个或多个相机、一个或多个生物计量扫描仪、一个或多个环境传感器以及一个或多个加速度计等)。

非易失性存储器128存储操作系统115、一个或多个应用116和数据117,使得例如操作系统115和/或应用116的计算机指令由(一个或多个)处理器103在易失性存储器122之外执行。在一些实施例中,易失性存储器122可以包括一种或多种类型的RAM和/或可以提供比主存储器更快的响应时间的高速缓存存储器。数据可以使用GUI 124的输入设备来输入或从(一个或多个)I/O设备126接收。计算机100的各种元件可以经由通信总线150通信。

所示的计算设备100仅被示为示例性客户端设备或服务器,并且可以由具有任何类型的机器或机器集合的任何计算或处理环境来实现,所述机器或机器集合可以具有能够如本文所述进行操作的合适的硬件和/或软件。

(一个或多个)处理器103可以由一个或多个可编程处理器来实现,以执行一个或多个可执行指令(例如计算机程序)来执行系统的功能。如本文所使用的,术语“处理器”描述执行功能、操作或操作序列的电路。功能、操作或操作序列可以被硬编码到电路中,或者通过保存在存储器设备中并由电路执行的指令来软编码。处理器可以使用数字值和/或使用模拟信号来执行功能、操作或操作序列。

在一些实施例中,处理器可以体现在一个或多个专用集成电路(ASIC)、微处理器、数字信号处理器(DSP)、图形处理单元(GPU)、微控制器、现场可编程门阵列(FPGA)、可编程逻辑阵列(PLA)、多核处理器或具有相关联的存储器的通用计算机中。

处理器可以是模拟、数字或混合信号。在一些实施例中,处理器可以是一个或多个物理处理器、或一个或多个虚拟(例如,远程定位或云)处理器。包括多个处理器核的处理器和/或多个处理器可以提供用于并行、同时执行指令的功能或者用于对多于一片数据并行、同时执行一个指令的功能。

通信接口118可包括一个或多个接口,以使计算设备100能够通过包括蜂窝连接的各种有线和/或无线连接来访问诸如局域网(LAN)、广域网(WAN)、个域网(PAN)或因特网之类的计算机网络。

在所描述的实施例中,计算设备100可以代表客户端设备的用户来执行应用。例如,计算设备100可以执行由管理程序管理的一个或多个虚拟机。每个虚拟机可以提供执行会话,在该执行会话内,应用代表用户或客户端设备执行,诸如托管桌面会话。计算设备100还可执行终端服务会话以提供托管桌面环境。计算设备100可以提供对远程计算环境的访问,该远程计算环境包括一个或多个应用、一个或多个桌面应用以及一个或多个应用可以在其中执行的一个或多个桌面会话。

对被配置为客户端设备102或服务器106或客户端设备102和服务器106中间的装置的计算设备100及其操作的附加描述可以在美国专利号9,176,744和9,538,345中找到,其全部内容通过引用并入本文。'744和'345专利都转让给本公开的当前受让人。

首先参考图3,所示的计算系统20允许最终用户定制web应用的用户界面(UI)的外观和感觉,而不用重新设计web应用本身。如下面将更详细讨论的,动态地改变web应用的用户界面的设计是基于标识web应用内的锚点以定义用于网页的锚定义层,基于锚定义层允许的内容来定制网页内的锚以定义用于网页的锚定制层,以及应用锚定制层以供web应用的正常使用以便为最终用户显示定制的网页。

根据所示计算系统20的概括描述,服务器30包括web应用32以及与web应用32相关联的锚定义层34,该锚定义层34标识在web应用32的网页36上显示的哪些锚点38可以由最终用户定制。每个锚定义层34对应于特定网页36。

锚定义层34由操作客户端计算设备40的用户来定义。用户可以是例如不同于定制锚点38的最终用户的管理员。在一些情况下,最终用户还可以定义锚定义层34而不是管理员。出于讨论的目的,客户端计算设备40也将被称为管理员客户端计算机设备。

管理员客户端计算设备40包括显示器42和本机应用44,该本机应用包括用于在编辑模式中访问web应用32的嵌入式浏览器46。编辑模式允许用于每个网页36的以下步骤,包括分析网页36的元素以标识锚点38、以及显示网页36以及所标识的锚点38,然后管理员确定允许由最终用户定制的显示网页36上的每个锚点38可用的定制选项。可用于为显示网页36定制的所有锚点38定义与显示网页36相关联的锚点定义层34。

定制选项包括标记要对最终用户隐藏的所选锚点38、以及标记要由最终用户可用于定制的所选锚点38。对于可用的锚点38,定制选项可以包括隐藏锚38、调整锚38的大小、将锚38标识为源和/或目标、以及标识将用作web应用32的商店视图中的活拼块的锚38。

被标识为源的锚点38意味着锚点38可以被最终用户从其当前位置移动到网页36上的另一位置。被标识为目标的锚点38意味着锚点38可以接受源锚点38的定位,这继而使得目标锚点38被定位在源锚点38最初被定位的地方。目标锚点38实质上与源锚点38交换位置。

又一定制选项包括选择锚点38中的一个作为拼块。当由最终用户在商店视图中发布时,拼块将作为web应用32的活拼块而出现。被标识为拼块的锚点38意味着web应用32的该部分将作为最近渲染的图像出现在web应用图标的适当位置或除web应用图标之外出现。

每个锚定义层34对应于特定网页36。可由最终用户定制的每个网页36具有与其相关联的其自己的锚定义层34。锚定义层34可以存储在web服务器30上。锚定义层34可以作为web应用32的发布资源元数据的一部分来存储。或者,锚定义层34可以与web服务器30分开存储,例如在企业服务器50上。

对于存储在企业服务器50上的锚定义层34,客户端计算设备40随后将向企业服务器50登记。企业服务器50可以是企业访问/安全系统的一部分。例如,企业服务器50可以是统一端点管理(UEM)服务器、企业移动性管理(EMM)服务器或移动设备管理(MDM)服务器。

客户端计算设备60由最终用户来操作。出于讨论的目的,客户端计算设备60也将被称为最终用户客户端计算机设备。最终用户客户端计算机设备60包括显示器62和本机应用64,该本机应用64包括用于在定制模式下访问web应用32的嵌入式浏览器66。定制模式允许执行以下步骤,包括显示至少一个网页36以及可以基于与显示网页36对应的锚定义层34所允许的内容来定制的锚点38。

步骤还包括最终用户定制显示网页36上的锚点38,以定义用于显示网页36的锚定制层68。用于最终用户的针对可以定制的每个锚点38的定制选项可以包括隐藏锚点、调整锚点的大小、重新定位锚点、以及将锚点与其他锚点分组在一起。在退出定制模式后并且在web应用32的正常使用中,锚定制层68在对应的网页36被显示之前被应用到对应的网页36,以便为最终用户显示定制网页。

最终用户能够定制web应用32的用户界面(UI)的外观和感觉,而不用重新设计web应用32本身。例如,锚点38之一可以是日历,并且该日历通常可以由web应用32定位在网页36的左上。然而,最终用户的偏好可以是将日历重新定位在网页36的右下。锚定制层68有利地使得日历如最终用户所确定的那样被重新定位。

嵌入式浏览器66不是基于网页36在日历的原始位置中渲染日历,而是在渲染网页36之前使用锚定制层68来重新定位日历。web应用32保持相同并且不被改变或修改。作为web应用32的一部分的不同网页36的渲染经过由最终用户定义的锚定制层68。

锚定制层68可被存储在最终用户客户端计算机设备60上。锚定制层68也可被高速缓存在企业服务器50上。最终用户客户端计算机设备60然后将向企业服务器50登记。

如上所述,包含嵌入式浏览器46、66的应用44、64(例如Citrix工作空间App(WSA))可以通过将定制层68合并到原始web应用32上来提供专门应用于最终用户的定制级别。锚定制层68包括组件(即,锚点38)的顺序和/或位置改变的定义以及被隐藏的组件的定义。由于在网页36被渲染在最终用户客户端计算机设备60上之前,相应的锚定制层68被最终用户客户端计算机设备60应用,所以web应用32本身保持不变。

参考图4中所示的流程图150,在UI定制过程中存在若干阶段。从开始(框152)起,在框154处访问web应用32。这可以由操作客户端计算设备40的管理员来执行。第一阶段是在框156标识web应用32内的锚点38,以定义用于网页36的锚定义层34。这通常是管理员的任务。这产生了用于web应用32中的每个网页36的锚定义层34。

第二阶段是在框158基于锚定义层34允许的内容来定制网页36内的锚点38,以定义用于网页36的锚定制层68。定制向最终用户提供了定制编辑能力,以便在锚定义层34的帮助下重新布置组件和/或标识要隐藏的组件。

第三阶段是在框160应用锚定制层68,以便正常使用web应用32,从而为最终用户显示所定制的网页。过程在框162结束。

上述第一和第二阶段可以由管理员来执行,或者两者都由最终用户来执行。然而,为了向最终用户隐藏最多的复杂性,并且为了向最终用户提供定制其web应用32体验的能力,优选的是,第一阶段将由管理员来执行,而第二阶段将由最终用户来执行。第一阶段可以由管理员容器应用或由Citrix工作空间App例如在特殊管理员模式下执行。第二和第三阶段也可以由Citrix工作空间App来执行。

在锚点标识阶段,向管理员提供编辑模式,在其中运行web应用对话的容器应用对底层DOM结构进行处理以标识UI附件:DIV、XPath/XPointer。例如,标识了HTML

元素。
元素定义了HTML文档中的划分或节。它是通常用作容器的块级元素,所述容器用于将其他HTML元素进行分组,例如,以便然后用CSS来进行模式编排或者以便用JavaScript来执行某些任务。

附件被智能地标识以显著减少可能的锚点38的数量。例如,空

结构与锚点38是不相关的。

向管理员呈现与所有可能锚点38的对话。对话对应于网页36。每个锚点38由生成的XPath表达来标识。这是标识组件的源XPath表达。管理员然后为每个锚点38标识它是否可由最终用户用于定制和/或这是源锚点、目标锚点还是两者以及组件是否可隐藏。这产生了针对每个对话的锚定义层34。锚定义层34可以如下:

在定制定义阶段,向最终用户呈现在包含嵌入式浏览器66的容器应用(例如Citrix工作空间App)中可用的定制功能,其可以包含基于Chromium引擎的嵌入式浏览器。当观看web应用32的特定屏幕36时,最终用户可以激活该定制功能。可以使用菜单项、热键或某种其他方法来执行激活。

当被激活时,锚点38显现出来,并且最终用户现在可以通过隐藏组件或通过使用拖放重新布置组件来定制对话。这产生了基于锚点38的源XPath表达的锚点38的定制映射定义,诸如以下:

在定制应用阶段,最终用户使用web应用32,并且容器应用检索用于特定最终用户的应用定制映射定义。应用定制映射在传入HTML页面被嵌入式浏览器66渲染之前改变传入HTML页面。

附加UI细节包括以下:

进入/退出编辑模式。

突出显示可用的锚(注入点)。

修改页面上不同锚的相对布局:移动、调整大小、隐藏。

生成新的锚。这可以等效于用户将源锚点移动到先前未使用的新位置。例如,如果app在一些区域中具有空的不动产(real estate)。

突出显示用户看作一组锚点的内容。这是为了描述呈现给用户的UI而在锚和组之间区分的能力。组可以是低级锚的集合,所述低级锚可以共同地移动到目标锚并且重新布置、调整大小或隐藏。编辑组本身:每组内的锚集合,添加或移除组。组内的锚可能必须具有类似的属性,例如可隐藏的、源、目标。

UI用于使管理员和/或最终用户为锚添加标签(标记)。例如,“我的任务”、“日历”、“仪表板”。

UI用于使用户命名“模式”(定制映射定义)、保存模式、应用模式、管理/编辑模式。标签可以用于自动地和重复地或建议地将模式应用于具有类似标记的锚的新app。这可以用标识app类别来补充,例如,文本内容丰富、仪表板样式等。例如,总是将日历移动到右上。将我的任务移到顶部。

流可以被分解成更精细的步骤。例如将大页面分成具有导航控件的两个或更多个标签。

页面的不重要的部分被阻挡。例如,用户从不填充的表单中的可选字段。

跳过具有重复任务(预填充)的页面。

锚点38或一组锚点38被标识为在预览SaaS应用的商店视图中作为“活拼块”出现。其类似于Microsoft Live Tiles,例如,示出最新新闻的循环图像和标题的新闻app。但是它也是不同的,因为用户定制了SaaS应用的实况预览。

现在参考图5-8,将讨论来自管理员的客户端计算设备40的屏幕截图。这对应于UI定制过程的第一阶段,该第一阶段分析web应用32内的网页36以标识用于每个网页36的锚点38,然后确定每个网页36的哪些锚点38可用于由最终用户进行定制,其中,该确定定义了与网页36相关联的锚定义层34。

管理员访问web应用32,如图5中的屏幕截图190所示。屏幕截图190对应于web应用32内的特定网页36。一旦已经访问了web应用32,则管理员在如图6中的屏幕截图200所示的菜单项202中选择管理锚。

在菜单项202中选择管理锚之后,如图7中的屏幕截图204所示,示出用于网页36的可用锚点38(1)-38(15)。管理员然后选择锚点之一38(1),如图8中的屏幕截图206所示。锚点38(1)在被选择时被突出显示。在选择了锚点38(1)之后,菜单项208出现,如图9中的屏幕截图207所示。

菜单项208针对所选锚点38(1)提供管理员可用的定制选项。定制选项包括基于管理员选择可用菜单项210,将所选锚点38(1)标记为可用于定制。如果管理员没有选择可用菜单项210,则所选锚点38(1)将对最终用户原样出现。换句话说,所选锚点38(1)将不可由最终用户定制。

如果所选锚点38(1)被标记为可用,则管理员通过标记可隐藏菜单图标212来确定所选锚点38(1)是否是可隐藏的,通过标记可调整大小的菜单图标214来确定所选锚点38(1)是否是可调整大小的,通过标记源菜单图标216来确定所选锚点38(1)是否是源锚,通过标记目标菜单图标218来确定所选锚点38(1)是否是目标锚,或者通过标记拼块菜单图标219来确定所选锚点38(1)是否是拼块。

锚点38(1)被标记为源意味着锚点38(1)可以由最终用户从其当前位置移动到网页36上的另一位置。锚点38(1)被标识为目标意味着锚点38(1)可以接受源锚点的定位,这继而使得目标锚点38(1)定位在源锚点初始定位的地方。当由最终用户在商店视图中发布时,拼块将作为用于web应用32的活拼块而出现。

管理员可以对显示网页36上的任何剩余锚点38(2)-38(15)重复从菜单项208的上述选择。一旦这完成,则针对显示网页36定义锚定义层34。因此,每个锚定义层34对应于特定网页36。管理员针对web应用32内的其他网页36重复该过程。当管理员完成时,web应用32的网页36出现,如图10中的屏幕截图220所示。

现在参考图11-28,将讨论来自最终用户的客户端计算设备60的屏幕截图。这对应于UI定制过程的第二阶段,该第二阶段基于与相应网页36相关联的锚定义层34所允许的内容来定制每个网页36的锚点38,其中,定制定义了与每个网页36相关联的锚定制层68。

最终用户访问web应用32,如图11中的屏幕截图226所示。屏幕截图226对应于web应用32内的初始网页36。最终用户然后能够选择菜单项232中的编辑锚,如图12中的屏幕截图230所示。

在菜单项232中选择编辑锚之后,如图13中的屏幕截图240所示,示出用于网页36的可用锚点38(1)-38(15)。然后,最终用户选择锚点之一38(1),如图14中的屏幕截图250所示。当被选择时,锚点38(1)被突出显示。

最终用户具有可用的多个定制选项,如基于与显示网页36对应的定义的锚定义层34那样。定制选项之一是将所选锚点38(1)移动到不同的位置,例如移动到锚点38(15)所处的地方,如图15中的屏幕截图260所示。这意味着所选锚点38(1)被管理员标记为源,并且锚点38(15)被标记为目标。锚点38(1)和38(15)交换位置。

另一定制选项是调整所选锚点38(1)的大小,如图16中的屏幕截图270所示。最终用户点击并拖动所选锚点38(1)的角,直到其达到期望大小,如图17中的屏幕截图274所示。

现在参考图18中的屏幕截图276,菜单项280被最终用户下拉。菜单项280提供多个选项。选项之一用于使最终用户对已经被调整大小的所选锚点38(1)打标签。最终用户选择标签锚菜单项282,这使得标签锚字段302被显示,如图19中的屏幕截图300所示。最终用户能够命名与所选锚点38(1)对应的定制。模式可包括一个或多个标签和一个或多个定制,如将在下面解释的。

另一个选项是将锚点分组在一起。如图20中的屏幕截图310所示,选择了锚点38(3)、38(4)两者。其中调整锚点38(1)的大小的一个选项是重新安排所有锚点38(1)-38(15)。其中调整锚点38(1)的大小的另一选项是覆盖三个底层锚点。在所示示例中,应用了后一选项。最终用户选择组锚菜单项284,其使锚点38(3)、38(4)分组在一起,如图21的屏幕截图320所示。被分组的锚点38(3)、38(4)作为单个锚点出现,因为它们链接在一起。

另一个选项是隐藏锚点。例如,被分组的锚点38(3)、38(4)可以隐藏不可见。这通过最终用户选择隐藏锚菜单项286来实现,如图22中的屏幕截图330所示。结果,如图23中的屏幕截图340所示,从视野中隐藏了被分组的锚点38(3)、38(4)。也可以如对调整大小的锚点38(1)所做的那样,对隐藏的被分组的锚点38(3)、38(4)打标签。

由最终用户执行的定制改变可被自动地保存到锚定制层68中。在这种情况下,用户不必点击保存。另一个选项是选择保存模式,其对应于对显示网页36中的锚点38(1)-38(15)做出的改变。该模式按名称保存,因此其可以在其他地方重用。这是通过由最终用户选择保存模式菜单项288来完成的,如图24中的屏幕截图350所示。这使得保存模式字段362被显示,如图25中的屏幕截图360所示。最终用户能够命名所保存的模式。例如,所保存的模式可以是命名的模式3。

另一个选项是将现有模式应用于新选择的网页36,其中,定制可能已经被应用或尚未被应用。与保存的模式对应的定制可通过最终用户选择应用模式菜单项290来应用于新选择的网页36,如图26中的屏幕截图370所示。结果,菜单项382被显示,如图27中的屏幕截图380所示。菜单项382提供保存的模式以供最终用户从中选择。在该示例中,如果选择了模式3,则对新选择的网页36所做的改变将与模式3中的改变相同。

所保存的模式也可应用于不同web应用中的网页。当不同web应用中的网页中的标签与所选保存模式中的标签匹配时,则可以通过应用所选保存模式来进行改变。在最终用户关闭锚点的编辑之后,然后显示正常网页,如图28中的屏幕截图390所示。标签是有用的工具。然而,在一些应用中,模式可以通过分析与锚点38相关联的附加元数据来应用,而不必通过显式的用户或管理设置(admin-set)标签。

现在,最终用户可以应用锚定制层68以用于web应用32的正常使用,以便为最终用户显示定制的网页。web应用32保持相同,并且不被改变或修改。作为web应用32的一部分的不同网页36的渲染经过由最终用户定义的锚定制层68。

受益于在前述描述和相关联附图中呈现的教导的本领域技术人员应当会想到许多修改和其他实施例。因此,应当理解,本公开不限于所公开的具体实施例,并且修改和实施例旨在被包括在所附权利要求的范围内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号