CN104133828A - 用于html文档的拖放剪贴板 - Google Patents
用于html文档的拖放剪贴板 Download PDFInfo
- Publication number
- CN104133828A CN104133828A CN201310653726.0A CN201310653726A CN104133828A CN 104133828 A CN104133828 A CN 104133828A CN 201310653726 A CN201310653726 A CN 201310653726A CN 104133828 A CN104133828 A CN 104133828A
- Authority
- CN
- China
- Prior art keywords
- content
- request
- page
- client
- response
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F3/0486—Drag-and-drop
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/958—Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
- G06F3/0482—Interaction with lists of selectable items, e.g. menus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/166—Editing, e.g. inserting or deleting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/543—User-generated data transfer, e.g. clipboards, dynamic data exchange [DDE], object linking and embedding [OLE]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
Abstract
本发明的各实施方式总体上涉及用于HTML文档的拖放剪贴板。具体地,本发明公开了用于在客户端-服务器架构中,诸如在基于云的网页编辑应用的环境中编辑页面的技术。在一个实施方式中,响应关于在客户端处呈现的给定页面上的选定内容块而请求的复制操作来调用运行于客户端浏览器中的剪贴板模块。该剪贴板模块配置用于在本地存储中存储复制的内容,并且还用于呈现UI剪贴板元素以供用户查看。可将UI剪贴板元素拖放至正在编辑的文档内的目标放置位置。可以视觉显示放置区指示符以便用户能够看到剪贴板内容在拖放操作的释放后将被放置于何处。在释放之后,剪贴板内容粘贴或以其他方式插入到当前放置区处的目标页面的DOM之中。
Description
技术领域
本公开涉及基于计算机网络的通信,更具体地,涉及用于管理页面编辑和客户端与服务器之间交互的技术。
背景技术
客户端-服务器架构是计算机系统之间联网和通信的常用方法。众多应用和功能,诸如基于云的文档存储库和服务、电子邮件以及基于因特网的通信等,均可使用客户端-服务器架构来实现。一般而言,客户端可以是查询服务器以使用资源的任何计算机(例如,台式机、膝上型计算机、平板计算机、智能电话等)或计算机程序,而服务器是配置用于与请求客户端共享其资源的计算机系统。可在服务器与客户端之间共享的示例资源为数众多并几乎是无限的,仅举几例而言,包括数据(例如,信息数据库和博客)、数据存储系统(例如,用于存储和组织客户端文件及数据的存储库)以及处理能力(例如,中央处理器和/或图形处理器)等。客户端和服务器计算系统通常以请求-响应协议来彼此通信,其中客户端发送请求而服务器返回对该请求的响应。
进一步公知的是,浏览器是一种常用于向服务器发起客户端请求的客户端应用,其中服务器的期望资源由统一资源标识符(URI)所标识,并且例如可以是网页、图像、视频或其他可消费内容。进一步公知的是,统一资源定位符(URL)是这样的一类URI:其定义给定资源的特定表示的网络位置,并且还定义指示出URL处可用内容类型的文件扩展。虽然浏览器主要用于基于因特网的通信,但其还可用于访问文件系统以及由专用网络中的服务器所提供的信息。进一步公知的是,超文本标记语言(HTML)是用于创建可在浏 览器中显示的页面和其他信息的主要标记语言,并且HTML元素是大多数网站的基本构件。HTML允许嵌入对象和内容并可用于创建交互式表单,并且提供了通过指定诸如标头、段落、链接和其他项目等针对文本的结构语义来创建文档的机制。HTML还可嵌入脚本(举例而言,诸如基于JavaScript的代码),所述脚本影响客户端处给定HTML页面的行为。
附图说明
图1a图示了根据本发明实施方式而配置的基于云的页面编辑系统。
图1b图示了根据本发明实施方式的、在图1a中所示的基于云的页面编辑系统的组件之间的一系列交互。
图2图示了根据本发明实施方式的、用于处理内容编辑请求的客户端方法。
图3图示了根据本发明实施方式的、用于处理内容编辑请求的服务器端方法。
图4a至图4h示出了共同图示根据本发明实施方式的页面编辑过程的一系列页面屏幕截图。
具体实施方式
本文公开了用于在客户端-服务器架构中,诸如在基于云的网页编辑应用的环境中编辑页面的技术。在一种此类实施方式中,响应关于在客户端处呈现的给定页面上的选定内容块而请求的诸如复制或剪切(或者可使用中间内容保存位置的其他此类操作)等编辑操作来调用供应给并运行于客户端浏览器中的剪贴板模块(例如,JavaScript)。内容例如可以是诸如文本、图像、图形或嵌入文件(例如,视频或音频)等任何对象。剪贴板模块配置用于在浏览器会话存储或其他合适的本地存储中存储复制的内容,并且还用于呈现可由用户访问的代表该内容存储的用户接口(UI)剪贴板元素。具体 而言,可在所编辑的文档内的目标放置位置处拖放UI剪贴板元素。在一些实施方式中,视觉呈现放置区指示符,以便用户能够看到剪贴板内容在拖放操作的释放后将被放置于何处。在拖放的释放后,剪贴板内容在当前放置区处被粘贴或以其他方式嵌入到页面中。根据一些实施方式,如果在剪贴板中表示了多个内容块,则可提供用户提示来允许用户选择特定的块。备选地,可默认粘贴所有的内容块。
总体概述
管理网页状态和客户端与服务器之间的交互对于网站开发者而言一般是个难题。一种常见的方法是使用Ruby来生成JavaScript代码,该JavaScript代码由服务器响应于客户端请求而发送。利用这样的方法,Ruby代码有效地渲染指令,并且所产生的JavaScript渲染页面数据。就基于web的页面编辑器系统而言,作为给定客户端计算机系统处的用户(例如,网站开发者),可以访问由服务器所提供的给定页面编辑应用,并使用该应用来开发网站的页面。在页面编辑过程期间,通过利用鼠标或键盘交互的一系列剪切/复制和粘贴功能,来完成将内容从页面上的一个位置重新安置到该页面上的另一位置。例如,典型的页面编辑系统提供用以实现所要粘贴的内容的精确定位的多个用户接口按钮,诸如“在元素前插入”按钮和“在元素后插入”按钮等。因此,在期望位置上放置内容可能十分复杂,或者除此之外涉及多个步骤和用户动作。
因此,并且根据本发明的实施方式,在此提供用于在客户端-服务器架构环境下编辑页面的技术。该技术可例如利用以下代码来实现:该代码嵌入在页面内并在客户端计算机的浏览器内执行,以便允许关于给定页面上的内容放置的拖放功能性。页面例如可以是由服务器提供并可由客户端经因特网访问的网页,或者是由服务器提供并可由客户端仅经专用网络(诸如公司内部网络)访问的页面。本发明的一个示例实施方式可例如在基于云的网页编辑应用中实现或者以其他方式与之联合使用,所述基于云的网页编辑应用诸如有 或任何其他允许对可提供给客户端计算系统的页面进行编辑的web设计应用。根据本公开将会理解,网站开发者可根据需要而编辑给定网站的供应页面并与之进行交互,包括在组成该网站的页面内移动内容,并将对应更新提供回服务器。
在一些此类实施方式中,剪贴板模块与页面编辑应用相集成,并且配置用于在应用服务器上执行的小服务程序(servlet)有效地将具有剪贴板模块的页面编辑应用供应给客户端。通过这种方式,可在客户端上的浏览器内执行包括剪贴板模块的页面编辑应用。该客户端剪贴板模块可例如响应关于在客户端处呈现的给定页面上的选定的当前显示内容(例如,文本、图形、图像、嵌入文件或者其他可选择的网页内容)块而请求的诸如复制或剪切操作(或者任何其他涉及将内容移动或复制到保存位置或除此之外的中间位置的操作)等编辑操作而得到调用。剪贴板模块被编程或以其他方式配置用于在客户端处的浏览器会话存储或其他合适的本地存储或存储器位置中存储目标内容,并且还用于在页面上放置供用户查看的代表该存储的用户接口(UI)元素,诸如虚拟剪贴板(本文总体上称为UI剪贴板元素或剪贴板)。剪贴板模块还可配置用于注释UI剪贴板元素以便向用户提供一定程度的反馈,诸如其中存储的内容块的数目和/或名称。
响应用户对UI剪贴板元素的拖放,剪贴板模块进一步配置用于执行对应的拖放操作,以便将UI剪贴板元素中所表示的内容放置于正在编辑文档内的目标放置位置,该目标放置位置可在相同的页面或不同的页面上。可以例如通过针对基于光标的用户接口系统的鼠标点击并按住动作,或者通过针对基于触摸屏的用户接口系统的轻敲并按住动作来进行拖放操作。根据本公开将会理解,可以使用其他合适的用户接口机制来进行拖放操作。在任何此类情况下,用户可在屏幕上到处拖动或以其他方式移动UI剪贴板元素,并将其放置在UI剪贴板元素中内容的目标位置处。根据实施方式,每当加载页面时,初始化并从会话存储(或其他本地存储)中读取剪贴板模块, 因此UI剪贴板元素在给定网站的所有页面中以及对于所有HTTP请求均为可用。在一些情况下,可视觉显示放置区指示符以便用户能够看到剪贴板内容在拖放操作的释放后将被放置于何处。例如,如果将UI剪贴板元素移动到可插入存储内容的位置的上方,则在UI剪贴板元素的下方出现预定义区域,该预定义区域指示出可放置内容的位置。以这种方式,可规定(例如,通过页面模板)给定页面的预定义区域,使得用户仅能够将剪贴板放置到这些预定义区域之一内。根据本公开将会理解,可以使用常规的拖放功能性和目标位置突出显示。
在释放UI剪贴板元素之后,剪贴板内容可粘贴或以其他方式插入到当前位置或最靠近的预定义区域处的目标页面的文档对象模型(DOM)之中。在一种这样的示例实施方式中,剪贴板模块配置用于响应UI剪贴板元素的释放而生成HTTP Post请求,该请求包括剪贴板内容(或以其他方式表示在剪贴板内的选定内容块)。服务器处的Post-小服务程序模块可编程或以其他方式配置用于处理Post请求并将响应提供回客户端。根据实施方式,剪贴板模块还可配置用于将返回的内容在目标放置位置插入到DOM中。公知的是,DOM是应用编程接口,其一般定义文档(例如,HTML和XML网页/文档)的逻辑结构以及访问和操纵该文档的方式。DOM允许网站开发者建立网页、在其结构内导航,以及添加、修改或删除元素和内容。
系统架构
图1a图示了根据本发明的实施方式而配置的基于云的页面编辑系统。如图中可见,该系统包括动态web应用,该动态web应用可在应用服务器上执行,并且被编程或以其他方式配置用于与经由网络而通信地耦合至应用服务器的客户端交互,以及用于向客户端的用户提供Web设计应用。客户端包括具有处理器(CPU)和存储器的用户计算系统以及浏览器应用,该浏览器应用可用于经由网络来访问web设计应用和应用服务器(包括数据库)的资源。所请求的内容能够以包括任何数目的组件的完整页面形式提供,或者以诸如 给定页面的一个组件之类的部分页面来提供。如图中进一步可见,动态web应用包括Post-小服务程序(Post-Servlet)模块,该Post-小服务程序模块配置用于处理Post请求和向数据库发布相关内容。应当理解,动态web应用还可包括其他功能模块,诸如Get-小服务程序模块(用于处理Get请求以及从数据库中检索内容)和其他模块——诸如涉及常规页面编辑以及可由客户端Web设计应用所采用的那些模块。此外,由应用服务器响应于来自客户端的请求而供应的网页包括一个或多个可渲染组件以及指令/代码,它们在本文中泛称为剪贴板模块,该剪贴板模块可在客户端浏览器(例如,JavaScript小程序(applet)或其他合适的代码)中执行。此类客户端-服务器布置例如可适合于任何在线页面编辑服务(例如,基于云的网站设计和编辑工具以及应用),或者期望允许客户端在给定网站的给定页面上或页面之间复制或剪切或者以其他方式移动内容的任何其他基于网络的系统。根据本公开,所描述的布置的许多配置和变化将会是容易理解的。
网络可以是任何通信网络,诸如用户的局域网和/或因特网,或者任何其他公用和/或专用通信网络(例如,公司的局域网和/或广域网等)。用户的计算系统(客户端)能够以任何合适的计算设备来实现,这些设备诸如为膝上型计算机、台式机、平板计算机、智能电话,或者其他能够经由网络而访问服务器并向用户显示内容的合适的计算设备。计算系统可采用任何数目的适合的用户输入机制,诸如鼠标、键盘、触摸屏、触控板、声控命令接口或者其任意组合。浏览器应用可使用任何数目的已知或专属浏览器或可比较技术来实现,其中该可比较技术有助于在网络(诸如因特网)上检索、呈现和遍历信息资源,并允许诸如包括剪贴板模块在内的页面编辑系统等页面嵌入代码的执行。数据库可例如为Java内容存储库(JCR)或任何其他可由服务器访问的合适的存储设备。
如本文多处所描述,剪贴板模块与Web设计应用(例如,页面编辑应用)相集成或与其联合操作以提供拖放剪贴板功能性。根据 本公开将会理解,存储UI剪贴板元素内容的本地存储或存储器在所有页面和所有HTTP请求(例如,Post请求和Get请求等)中均持续存在。通过依次参考图1b、图2、图3,和图4a至图4i(其中每个将会依次讨论),将提供根据本发明的实施方式而配置的、包括剪贴板模块和Post-小服务程序模块的示例系统的进一步细节。
根据本公开将会理解,图1a中所示系统的各个模块和组件,诸如剪贴板模块、Web设计应用和Post-小服务程序模块等,能够以软件来实现,所述软件诸如为编码在任何计算机可读介质或计算机程序产品(例如,硬盘驱动器、服务器、盘或其他合适的非暂时性存储器或一组存储器)上的指令集(例如,C、C++、面向对象的C、JavaScript、Java、BASIC等),其在由一个或多个处理器执行时使得本文所提供的各个方法被执行。在其他实施方式中,所述功能组件/模块可由诸如门级逻辑(例如,FPGA)或特制半导体(例如,ASIC)等硬件来实现。其他实施方式还可由微控制器来实现,该微控制器具有用于接收和输出数据的多个输入/输出端口,以及用于执行本文所述功能性的多个嵌入例程。在更一般的意义上,可以使用硬件、软件和固件的任何合适的组合。在一个特定实施方式中,使用JavaScript或其他可实时向请求访问应用服务器的客户端提供的可下载代码来实现Web设计应用的剪贴板模块,并使用Java或C++来实现Post-小服务程序模块。根据本公开容易理解,可以使用众多其他特定配置。
图1b图示了根据本发明实施方式的、在图1a中所示的基于云的页面编辑系统的组件之间的一系列交互。出于讨论的目的,假设已由服务器接收到来自客户端的初始页面请求,并且该服务器已通过发送所请求的页面而做出响应。还假设所请求的页面包括用户可选择的若干个可渲染组件——诸如文本、图形、图像、嵌入视频、嵌入音频或其任何组合以及/或者其他对象,并且用户正在开发产品网站以供潜在消费者访问和购买产品。图4a中示出了一个示例页面,该页面包括示出若干个组件的产品页面,其中所述组件可由有意购 买各种对应产品(在本示例情况中为计算机、移动电话和监视器)的消费者来选择和评价。可选择的组件的形式例如可以是超链接,其在被选择时如通常做法那样使得向消费者提供附加的内容或页面(可使用任何合适的网站导航技术和结构)。此外,潜在消费者可看到一些信息文本。
现在,假设开发网站的用户期望经由编辑操作来完善页面,包括将内容从一个页面位置复制到另一页面位置,并且已使用任何合适的内容选择机制选择了该内容。例如,并参考图4b中所示的示例实施方式,用户已使用基于光标的动作(例如,在目标段落上双击,或者在目标段落上的点击-拖动-释放动作)而选择了信息文本的段落。备选地,对于触摸屏配置,例如可在段落上使用手指或触笔动作来选择文本段落。在更一般的意义上,任何给定的DOM元素均可由用户来选择。
一旦选择了目标内容,网站开发者/用户可对其开始编辑操作。例如,在一个示例实施方式中,响应于所做出的内容选取,自动调用并向用户呈现编辑UI接口。例如,图4c中示出了一种这样的实施方式,其中响应于所做出的内容选取,Web设计应用被配置为向用户呈现选项菜单覆盖和UI选择菜单。如在本示例情况中可见,UI选择菜单选项中之一为复制按钮,并伴有包括任何数目的期望功能或除此之外的典型功能(例如,移动、绘制、删除、关闭菜单等)在内的其他按钮。此外,选项菜单覆盖包括若干个工具或功能选项,其包括位于菜单顶部的剪贴板元素,连同其他示例功能元素(例如,文本、图像、列等)。
继续参考图4d中所示的示例实施方式,响应于用户点击或以其他方式选择UI选择菜单的复制按钮,Web设计应用被配置为触发对剪贴板模块的复制功能调用(如图1b中所示(复制DOM元素))。作为响应,如图1b中进一步所示,剪贴板模块被配置为隐式地触发浏览器会话存储或其他合适的本地存储或存储器中的保存操作(设置元素)。通过这种方式,存储的内容在站点的所有页面上和对所 有HTTP请求都是可用的。此外,本示例实施方式的剪贴板模块被配置为更新选项菜单覆盖的剪贴板元素的呈现以反映剪贴板元素现在包含1个对象(即,刚刚复制的选定文本)。
根据本公开容易理解,其他实施方式可包括不同的编辑工具/功能和调用方案以及不同的外观和感觉。例如,一些web设计应用可包括配置到可由用户在页面某处(例如,页面的顶部或底部)访问的工具栏中的各种可用编辑选项(例如,复制、剪切、删除、移动等)。该工具栏可始终呈现,或者根据需要而仅在做出用户内容选择之后呈现。在其他示例实施方式中,诸如在图4d’中所示的一个实施方式中,用户可右键点击选定内容,从而呈现编辑选项下拉菜单,其包括复制功能。如图中进一步可见,一旦用户选择下拉菜单的复制选项,页面顶部的工具栏中所显示的剪贴板元素便会被注释(‘1个对象’),以便反映出已将目标内容复制到存储器中。根据本公开容易理解,可以使用任何已知或定制的技术来提供具有本文所述拖放元素的众多其他此类UI控制特征和布局。
在任何此类情况中,如图4e中总体示出,用户现在可将呈现在屏幕上的剪贴板元素拖动至站点的给定页面内的目标位置并将剪贴板元素放置在该位置。在一些此类实施方式中,当用户到处拖动剪贴板元素时,Web设计应用可被配置为在元素经过或足够接近可在其中放置元素的目标放置区时突出显示这些区。图4f示出了使用突出显示的放置区指示符的一个此类示例实施方式。如前文所解释,该预定义区可以是用以制作给定页面的DOM或模板的一部分,并为Web设计应用所知,从而可随时提供实时的突出显示。此类放置区突出显示可用于向用户给予当释放拖动操作后内容将被放置之处的更好的指示。
当释放拖动操作时,可执行将剪贴板元素中所表示的一个或多个存储的DOM元素插入目标页面的目标放置区指示符中的过程。例如,并进一步参考图1b,响应于拖放操作的释放,剪贴板模块隐式地向服务器发送AJAX Post请求(例如,保存/粘贴)并且还向Web 设计应用通知该Post请求(粘贴DOM元素)。如在图1b中进一步可见,Post-小服务程序模块处理Post请求(设置响应于请求而创建和渲染的内容的状态并记录其位置)并将服务器的响应提供回Web设计应用,其中该Web设计应用处理该响应(例如,关于处理成功或错误)并确定将接收到的内容放置于何处。客户端与服务器之间的这种请求-响应交换确保了服务器处的内容数据与客户端处的内容数据同步。因此,在一些实施方式中,注意到在客户端本地粘贴的初始内容随后由Post请求中所返回的内容所代替,以便有效提供无缝的内容放置。在其他实施方式中,Post请求可不包括渲染的内容而仅返回状态。在此类情况下,并且假设Post请求是成功的,可使用来自客户端的后续Get请求来检索内容从而确保客户端和服务器端的内容同步。在任何此类情况下,如果服务器未能成功渲染所请求的内容(无论出于何种原因),则可使用指示该故障的状态代码来通知客户端,从而触发客户端代码来移除复制的内容并相应地通知用户。
应当理解,虽然示出了AJAX调用和Post-小服务程序模块,但可以使用任何合适的HTTP服务器技术(例如,可使用PHP应用来处理Post请求并判定其是否有效,以及进一步更新数据库中的值)。还应当理解,诸如图4g的示例中所示的情况那样,该发布-释放处理对于用户是透明的——用户一般会看到内容如期望的那样得到及时放置。诸如图4h中所示的情况那样,用户可继而根据期望来进一步编辑或以其他方式完善内容。这里,用户粘贴和编辑内容来分出关于正在进行的销售活动的信息文本。
注意在本示例实施方式中,内容被粘贴在复制内容所在的相同页面上。然而还要注意,每当加载页面时,可初始化并从本地存储(浏览器会话存储或其他本地存储器)中读取剪贴板元素,以便向每个页面提供可放置的剪贴板元素。因此,在其他实施方式中,可从一个页面复制内容并将其粘贴至另一页面。为此,如图1b的示例实施方式中进一步示出,还配置剪贴板模块来访问本地存储,以在 其中放置内容(设置元素)或从中检索内容(获取元素)。
而且如前文所解释,根据一些实施方式,如果剪贴板元素具有多个内容块存储于其中,则可给予用户机会来挑选所要粘贴的期望内容。例如,在释放剪贴板元素后,可以用弹出窗口来提示用户,该窗口指示出剪贴板元素中所表示的每个内容块。可将弹出窗口中列出的每个元素与UI选择机制(例如,单选按钮或复选框)相关联,其中用户可选择该UI选择机制,并继而选择‘提交’或‘好(OK)’按钮来将这些选定的内容块粘贴至目标放置位置。图4g’中示出了一个此类示例实施方式。
注意,根据一些实施方式,剪贴板模块可包括决定剪贴板模块的功能性的,一定程度的用户可配置性。例如,在一些此类实施方式中,用户可访问剪贴板模块的配置用户接口,该配置用户接口允许用户来定义在放置时将会自动粘贴所有内容块,或者将会向用户提供弹出窗口从而允许用户选择所要粘贴的期望的块。可以通过选择工具栏中的配置选项或配置按钮或者任何其他可被选择以便使得呈现可由用户设置的一个或多个可配置选项的此类合适的UI机制而随时访问这样的配置用户接口。根据目标应用的期望性能和灵活性,任何数目的功能特征可以是硬编码的或可由用户配置的,并且众多配置将会根据本公开而容易理解。
方法
图2图示了根据本发明实施方式的用于处理内容编辑请求的客户端方法。如前文所解释,可以通过嵌入或能够以其他方式在供应给客户端的给定页面的浏览器内执行的Web设计应用(页面编辑系统)或其他代码来执行所述方法。根据一个此类实施方式,使用JavaScript应用编程接口(API)或者其他可用于在执行于客户端上的浏览器应用内实现所述方法的合适的客户端代码来编程或以其他方式配置Web设计应用。
如图中可见,该方法包括接收201指示出与DOM元素相关联的复制功能的用户输入(诸如图4d或图4d’中所示)。方法响应于使 用中的复制功能而继续调用203嵌入在页面内的代码(例如,JavaScript),并将目标DOM元素复制205到存储中(诸如图1b中所示)。方法继续在页面上呈现207剪贴板UI元素(诸如图4d或图4d’中所示)。如前文所进一步解释,可注释该剪贴板UI元素以例如指示出其中所表示的DOM元素的数目。
方法继续在209处确定剪贴板UI元素是否被移动。如果其未被移动,则方法继续等待剪贴板UI的移动,并在211处连续监控以查看是否有新的页面或新的复制功能被选择。如果未发生移动并已使用了新的复制功能,则该方法如前文所讨论那样在205处继续。因此,如果期望,则可将多个DOM元素保存至剪贴板UI元素中。如果未发生移动并且已访问了新的页面,则该方法如前文所讨论那样在207处继续,从而可根据期望而在该页面上呈现剪贴板UI元素。
如果检测到剪贴板UI元素的移动,则方法包括将存储的DOM元素经由Web设计应用而插入213目标放置区,执行215对服务器的Post请求(诸如:Post[(数据,媒体类型);URL]),以及接收217对Post请求的响应并将返回的内容放置在目标放置区中——诸如图4f、图4g或图4g’和图4h中所示以及参考图1b所进一步讨论。如前文所解释,在一些实施方式中,诸如在对Post请求的响应不包括期望内容的那些实施方式中,可联合Post请求来使用Get请求。例如,并根据一个特定的此类实施方式,将服务器所提供的(对于Post请求的)响应暴露给读取该响应的客户端模块(例如,剪贴板模块),并且如果服务器确认插入/发布操作成功,则客户端剪贴板模块可进一步被配置为通过向服务器发送HTTP Get请求从而接收最近发布的DOM元素(与服务器同步)来刷新粘贴/发布的DOM元素。如果服务器拒绝了在目标放置位置的DOM元素放置或者以其他方式指示出插入/发布操作失败(无论出于何种原因),则剪贴板模块可进一步被配置为从页面中删除临时粘贴的段落。在一个此类实施方式中,剪贴板模块还被配置为向用户给予关于内容放置失败的视觉反馈(例如,诸如指示出内容放置操作失败的提示和/或适当的失败代 码以及任何建议的补救措施的呈现)。
图3图示了根据本发明实施方式的用于处理内容编辑请求的客户端方法。如图中可见,可以例如通过Post-小服务程序模块或其他可在服务器处执行的代码来执行该方法。根据一个此类实施方式,可以使用Java或其他合适的服务器端代码来实现所述方法。
该方法包括接收301包含与基于客户端的粘贴功能相关联的数据的Post请求,以及使用该请求中的数据来创建303期望内容。方法还包括针对介质类型(例如,HTML、XML、JSON等)而检查305Post请求,以及将创建的内容渲染为目标格式。方法还包括设置状态代码(例如,依照HTTP规范1.1的201状态代码)来指示Post请求成功,以及对创建的内容的位置设置位置响应标头(也依照HTTP规范1.1)。方法还包括向响应的正文添加317渲染的内容并将响应返回至客户端。位于客户端的用户可继而按意愿进一步编辑页面内容。在其他实施方式中,应回想起对Post请求的响应可不包括所请求的内容。在此类情况下,服务器可进一步被配置为随后接收Get请求并提供由先前的Post请求所创建的期望内容。
因此,本发明的一个实施方式包括客户端API,该客户端API允许其他模块或代码访问剪贴板元素的存储(例如,向该存储添加新内容)。API例如可以是可在浏览器中执行的Javascript模块,并且其他对应于UI控制元素的可执行模块/代码(例如,工具栏或页面其他位置处的复制按钮)被配置用于识别在何时点击或以其他方式选择了给定UI控制元素,并且用于访问API以便在剪贴板中存储新元素,该新元素可于随后被拖放至给定网站的页面内的一些期望位置。
根据本公开,众多实施方式将会是容易理解的,并且本文所述特征能够以任何数目的配置相组合。本发明的一个示例实施方式提供了用于在客户端-服务器布置中编辑页面的计算机实现方法。该方法包括由客户端计算系统将选定的内容块复制到位于客户端计算系统的本地存储中,所述选定内容块呈现在由与所述客户端计算系统 通信的服务器计算系统向所述客户端计算系统的浏览器供应的页面上。该方法还包括,通过客户端计算系统将剪贴板用户接口(UI)元素呈现在所述页面上,以及响应于将该剪贴板UI元素移动并放置到目标位置而在该目标位置中插入存储的选定内容块。在一些情况下,响应于将剪贴板UI元素移动并放置到目标位置,该方法还包括:执行对服务器计算系统的Post请求,该Post请求包括存储的选定内容块;以及接收指示出Post请求状态的、针对Post请求的响应。在一些此类情况下,响应于状态指示出Post请求成功,该方法还包括:执行对服务器计算系统的Get请求,该Get请求请求服务器计算系统返回由Post请求所产生的内容;接收包括由Post请求所产生的请求内容的,针对Get请求的响应;以及用所述请求内容来刷新目标位置的内容。在其他此类情况下,针对Post请求的响应包括由Post请求的服务器处理所产生的内容,并且该方法还包括用该内容来刷新目标位置的内容。在其他此类情况下,响应于状态指示出Post请求不成功,该方法还包括以下各项中的至少一个:移除插入在目标位置中的内容;以及呈现关于内容放置失败的视觉反馈。在一些情况下,目标位置处在与具有选定内容块的页面不同的页面上(当然,其在其他情况下可处在相同页面上)。在一些情况下,该方法包括在剪贴板UI元素的移动期间呈现放置区指示符,所呈现的放置区指示符示出了如果在那一刻放置剪贴板UI元素,则存储的选定内容块将被插入的位置。在一些情况下,该方法通过嵌入所述页面内并可在客户端计算系统的浏览器中执行的代码来执行。在一些情况下,该方法包括在客户端计算系统中接收与选定内容块相关联的用户输入,从而使得执行复制和呈现。在一些情况下,响应于本地存储包含多个内容块,该方法还包括呈现配置用于接收对这些块中的一个或多个的选取的用户接口机制,并且插入目标位置中的存储的选定内容块为所述一个或多个选取的块。根据本公开,变化将会是容易理解的。例如,本发明的另一实施方式提供了以指令编码的计算机程序产品或者一个或多个计算机可读介质,所述指令在由一个或多 个处理器执行时,使得执行用于在客户端-服务器布置中编辑页面的过程,其中该过程包括如在本段各处所定义的功能性。
本发明的另一实施方式提供了用于在客户端-服务器布置中编辑页面的系统。该系统包括可在客户端计算机的浏览器中执行的一个或多个客户端模块并且配置用于:将选定的内容块复制到位于客户端计算机的本地存储中,所述选定内容块位于向客户端计算机供应的页面上;在所述页面上呈现剪贴板用户接口(UI)元素;以及响应于将该剪贴板UI元素移动并放置在目标位置,将存储的选定内容块插入目标位置。该系统还包括服务器计算机,该服务器计算机配置用于向客户端计算机的浏览器供应所述页面以及一个或多个客户端模块,其中所述一个或多个客户端模块嵌入在所述页面内。在一些情况下,响应于将剪贴板UI元素移动并放置在目标位置,所述一个或多个客户端模块还配置用于:执行对服务器计算机的Post请求,该Post请求包含存储的选定内容块;以及接收指示出Post请求的状态的、针对Post请求的响应。在一些此类情况下,响应于状态指示出Post请求成功,所述一个或多个客户端模块还配置用于:执行对服务器计算机的Get请求,该Get请求请求服务器计算机返回由Post请求所产生的内容;接收包含由Post请求所产生的请求内容的,针对Get请求的响应;以及用所述请求内容来刷新目标位置的内容。在其他此类情况下,针对Post请求的响应包括由Post请求的服务器处理所产生的内容,并且所述一个或多个客户端模块还配置用于以该内容来刷新目标位置的内容。在其他此类情况下,响应于状态指示出Post请求不成功,所述一个或多个客户端模块还配置用于执行以下各项中的至少一个:移除插入目标位置中的内容;以及呈现关于内容放置失败的视觉反馈。在一些情况下,所述一个或多个客户端模块还配置用于执行以下各项中的至少一个:在剪贴板UI元素的移动期间呈现放置区指示符,所呈现的放置区指示符示出了如果在那一刻放置剪贴板UI元素,则存储的选定内容块将被插入的位置;以及响应于本地存储包含多个内容块,呈现配置用于接收对这些块 中的一个或多个的选取的用户接口机制,并且插入目标位置中的存储的选定内容块为所述一个或多个选取的块。
已出于说明和描述的目的而呈现了本发明的示例实施方式的前文描述。该描述并不旨在成为详尽的描述或将本发明限定于所公开的确切形式。根据本公开,许多修改和变化是可能的。本发明的范围并不旨在由该详细描述所限定,而是由所附权利要求来限定。
Claims (25)
1.一种在客户端-服务器布置中编辑页面的计算机实现方法,所述方法包括:
由客户端计算系统将选定的内容块复制到位于所述客户端计算系统处的本地存储中,所述选定内容块呈现在由与所述客户端计算系统通信的服务器计算系统向所述客户端计算系统的浏览器供应的页面上;
由所述客户端计算系统将剪贴板用户接口(UI)元素呈现在所述页面上;以及
响应于将所述剪贴板UI元素移动并放置在目标位置,将存储的选定内容块插入所述目标位置。
2.根据权利要求1的方法,其中响应于将所述剪贴板UI元素移动并放置在所述目标位置,所述方法还包括:
执行对所述服务器计算系统的Post请求,所述Post请求包括所述存储的选定内容块;以及
接收指示出所述Post请求的状态的、针对所述Post请求的响应。
3.根据权利要求2的方法,其中响应于所述状态指示出所述Post请求成功,所述方法还包括:
执行对所述服务器计算系统的Get请求,所述Get请求请求所述服务器计算系统返回由所述Post请求所产生的内容;
接收包含由所述Post请求所产生的所述请求内容的、针对所述Get请求的响应;以及
用所述请求内容来刷新所述目标位置的内容。
4.根据权利要求2的方法,其中针对所述Post请求的响应包括由所述Post请求的服务器处理所产生的内容,并且所述方法还包括用所述内容来刷新所述目标位置的内容。
5.根据权利要求2的方法,其中响应于所述状态指示出所述Post请求不成功,所述方法还包括以下各项中的至少一个:
移除插入所述目标位置处的所述内容;以及
呈现关于内容放置失败的视觉反馈。
6.根据权利要求1的方法,其中所述目标位置位于与具有所述选定内容块的所述页面不同的页面上。
7.根据权利要求1的方法,其中所述方法还包括在所述剪贴板UI元素的移动期间呈现放置区指示符,所呈现的放置区指示符示出如果在那一刻放置所述剪贴板UI元素,则所述存储的选定内容块将被插入的位置。
8.根据权利要求1的方法,其中所述方法通过嵌入所述页面内并可在所述客户端计算系统的所述浏览器中执行的代码来执行。
9.根据权利要求1的方法,还包括:
在所述客户端计算系统中接收与所述选定内容块相关联的用户输入,从而使得执行所述复制和呈现。
10.一种以指令编码的计算机程序产品,该指令在由一个或多个处理器执行时使得执行用于在客户端-服务器布置中编辑页面的过程,所述过程包括:
由客户端计算系统将选定的内容块复制到所述客户端计算系统处的本地存储中,所述选定内容块呈现在由与所述客户端计算系统通信的服务器计算系统向所述客户端计算系统的浏览器供应的页面上;
由所述客户端计算系统将剪贴板用户接口(UI)元素呈现在所述页面上;以及
响应于将所述剪贴板UI元素移动并放置在目标位置处,将存储的选定内容块插入所述目标位置处。
11.根据权利要求10的计算机程序产品,其中响应于将所述剪贴板UI元素移动并放置在所述目标位置中,所述过程还包括:
执行对所述服务器计算系统的Post请求,所述Post请求包括所述存储的选定内容块;以及
接收指示出所述Post请求的状态的、针对所述Post请求的响应。
12.根据权利要求11的计算机程序产品,其中响应于所述状态指示出所述Post请求成功,所述过程还包括:
执行对所述服务器计算系统的Get请求,所述Get请求请求所述服务器计算系统返回由所述Post请求所产生的内容;
接收包含由所述Post请求所产生的所述请求内容的,针对所述Get请求的响应;以及
用所述请求内容来刷新所述目标位置的内容。
13.根据权利要求11的计算机程序产品,其中针对所述Post请求的响应包括由所述Post请求的服务器处理所产生的内容,并且所述过程还包括用该内容来刷新所述目标位置的内容。
14.根据权利要求11的计算机程序产品,其中响应于所述状态指示出所述Post请求不成功,所述过程还包括以下各项中的至少一个:
移除插入所述目标位置处的所述内容;以及
呈现关于内容放置失败的视觉反馈。
15.根据权利要求10的计算机程序产品,其中所述目标位置位于与具有所述选定内容块的所述页面不同的页面上。
16.根据权利要求10的计算机程序产品,其中所述过程还包括在所述剪贴板UI元素的移动期间呈现放置区指示符,所呈现的放置区指示符示出如果在那一刻放置所述剪贴板UI元素,则所述存储的选定内容块将被插入的位置。
17.根据权利要求10的计算机程序产品,其中所述过程通过嵌入所述页面内并可在所述客户端计算系统的所述浏览器中执行的代码来执行。
18.根据权利要求10的计算机程序产品,所述过程还包括:
在所述客户端计算系统处接收与所述选定内容块相关联的用户输入,从而使得执行所述复制和呈现。
19.根据权利要求10的计算机程序产品,其中响应于所述本地存储包含多个内容块,所述过程还包括呈现配置用于接收对这些块中的一个或多个的选取的用户接口机制,并且插入所述目标位置处的所述存储的选定内容块为所述一个或多个选取的块。
20.一种用于在客户端-服务器布置中编辑页面的系统,所述系统包括:
一个或多个客户端模块,其可在客户端计算机的浏览器中执行,并且配置用于:
将选定的内容块复制到所述客户端计算机处的本地存储中,所述选定内容块在向所述客户端计算机供应的页面上;
将剪贴板用户接口(UI)元素呈现在所述页面上;以及
响应于将所述剪贴板UI元素移动并放置在目标位置处,将存储的选定内容块插入所述目标位置处;以及
服务器计算机,配置用于向所述客户端计算机的所述浏览器供应所述页面和所述一个或多个客户端模块,其中所述一个或多个客户端模块嵌入在所述页面内。
21.根据权利要求20的系统,其中响应于将所述剪贴板UI元素移动并放置在所述目标位置处,所述一个或多个客户端模块还配置用于:
执行对所述服务器计算机的Post请求,所述Post请求包括所述存储的选定内容块;以及
接收指示出所述Post请求的状态的、针对所述Post请求的响应。
22.根据权利要求21的系统,其中响应于所述状态指示出所述Post请求成功,所述一个或多个客户端模块还配置用于:
执行对所述服务器计算机的Get请求,所述Get请求请求所述服务器计算机返回由所述Post请求所产生的内容;
接收包含由所述Post请求所产生的所述请求内容的,针对所述Get请求的响应;以及
用所述请求内容来刷新所述目标位置的内容。
23.根据权利要求21的系统,其中针对所述Post请求的所述响应包括由所述Post请求的服务器处理所产生的内容,并且所述一个或多个客户端模块还配置用于用该内容来刷新所述目标位置的内容。
24.根据权利要求21的系统,其中响应于所述状态指示出所述Post请求不成功,所述一个或多个客户端模块还配置用于执行以下各项中的至少一个:
移除插入所述目标位置处的所述内容;以及
呈现关于内容放置失败的视觉反馈。
25.根据权利要求20的系统,其中所述一个或多个客户端模块还配置用于执行以下各项中的至少一个:
在所述剪贴板UI元素的移动期间呈现放置区指示符,所呈现的放置区指示符示出如果在那一刻放置所述剪贴板UI元素,则所述存储的选定内容块将被插入的位置;以及
响应于所述本地存储包含多个内容块,呈现配置用于接收对这些块中的一个或多个的选取的用户接口机制,并且插入所述目标位置处的所述存储的选定内容块为所述一个或多个选取的块。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/873,401 US11050851B2 (en) | 2013-04-30 | 2013-04-30 | Drag-and-drop clipboard for HTML documents |
US13/873,401 | 2013-04-30 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104133828A true CN104133828A (zh) | 2014-11-05 |
CN104133828B CN104133828B (zh) | 2018-08-17 |
Family
ID=50554675
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310653726.0A Active CN104133828B (zh) | 2013-04-30 | 2013-12-04 | 用于html文档的拖放剪贴板 |
Country Status (4)
Country | Link |
---|---|
US (1) | US11050851B2 (zh) |
CN (1) | CN104133828B (zh) |
DE (1) | DE102014005958A1 (zh) |
GB (1) | GB2513717A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106503009A (zh) * | 2015-09-07 | 2017-03-15 | 阿里巴巴集团控股有限公司 | 显示页面中数据的转移方法及装置 |
CN107623780A (zh) * | 2017-08-31 | 2018-01-23 | 努比亚技术有限公司 | 一种编辑方法、终端及计算机可读存储介质 |
CN109074375A (zh) * | 2016-03-29 | 2018-12-21 | 微软技术许可有限责任公司 | web文档中的内容选择 |
CN109804343A (zh) * | 2016-10-05 | 2019-05-24 | 微软技术许可有限责任公司 | 选择和移动提示 |
CN110235122A (zh) * | 2016-12-21 | 2019-09-13 | 开文公司 | 用于将web内容转化为可重复使用的模板和组件的系统和方法 |
CN111782424A (zh) * | 2020-07-03 | 2020-10-16 | 厦门美图之家科技有限公司 | 数据处理方法和装置、电子设备及存储介质 |
CN111782424B (zh) * | 2020-07-03 | 2024-05-03 | 厦门美图之家科技有限公司 | 数据处理方法和装置、电子设备及存储介质 |
Families Citing this family (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090106251A1 (en) * | 2001-10-24 | 2009-04-23 | Harris Scott C | Web based communication of information with reconfigurable format |
CN104166646B (zh) * | 2013-05-16 | 2018-07-06 | 腾讯科技(深圳)有限公司 | 一种输入统一资源定位符的方法和装置 |
US20150012861A1 (en) * | 2013-07-02 | 2015-01-08 | Dropbox, Inc. | Syncing content clipboard |
US9823824B2 (en) * | 2013-08-19 | 2017-11-21 | Kodak Alaris Inc. | Context sensitive adaptable user interface |
US20160246484A1 (en) * | 2013-11-08 | 2016-08-25 | Lg Electronics Inc. | Electronic device and method for controlling of the same |
US20150286616A1 (en) * | 2014-04-07 | 2015-10-08 | Ephox Corporation | Method For Generating A Document Using An Electronic Clipboard |
KR102411890B1 (ko) * | 2014-09-02 | 2022-06-23 | 삼성전자주식회사 | 컨텐츠를 처리하는 방법 및 이를 위한 전자 장치 |
US10963539B2 (en) * | 2014-09-10 | 2021-03-30 | Mk Systems Usa Inc. | Interactive web application editor |
US10491685B2 (en) * | 2015-03-31 | 2019-11-26 | Microsoft Technology Licensing, Llc | Session transfer between resources |
US10210383B2 (en) | 2015-09-03 | 2019-02-19 | Microsoft Technology Licensing, Llc | Interacting with an assistant component based on captured stroke information |
US10387034B2 (en) | 2015-09-03 | 2019-08-20 | Microsoft Technology Licensing, Llc | Modifying captured stroke information into an actionable form |
US9858494B2 (en) * | 2015-12-28 | 2018-01-02 | Facebook, Inc. | Systems and methods for analyzing rendered content |
US20170322695A1 (en) * | 2016-05-04 | 2017-11-09 | Icebox, Inc. | Methods and systems for managing data and files |
US10506017B2 (en) | 2016-05-20 | 2019-12-10 | Adobe Inc. | Manipulation of PDF file content through HTTP requests |
US10627993B2 (en) | 2016-08-08 | 2020-04-21 | Microsoft Technology Licensing, Llc | Interacting with a clipboard store |
US10685178B2 (en) * | 2018-03-26 | 2020-06-16 | Adobe Inc. | Defining and delivering personalized entity recommendations |
US10783012B2 (en) | 2018-04-20 | 2020-09-22 | CopyBucket, Inc. | Systems and methods for efficient inter-device data exchange |
US11226727B2 (en) * | 2018-11-12 | 2022-01-18 | Citrix Systems, Inc. | Systems and methods for live tiles for SaaS |
US10788957B1 (en) * | 2019-08-22 | 2020-09-29 | Intel Corporation | Web page designing with sandboxed custom editors |
US11789597B2 (en) * | 2021-01-25 | 2023-10-17 | Microsoft Technology Licensing, Llc | Systems and methods for storing references to original uniform resource identifiers |
US11954318B2 (en) * | 2022-02-20 | 2024-04-09 | Monday.com Ltd. | Dynamically adjusting GUI elements to reflect user multi-selection |
US11893262B2 (en) | 2022-03-25 | 2024-02-06 | Dropbox, Inc. | Generating and maintaining a batch action clipboard for web-based platforms |
US20230334018A1 (en) * | 2022-04-18 | 2023-10-19 | Microsoft Technology Licensing, Llc | File selection user interface |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090287824A1 (en) * | 2008-05-13 | 2009-11-19 | Google Inc. | Multi-process browser architecture |
CN102077198A (zh) * | 2008-06-25 | 2011-05-25 | 微软公司 | 结构化共同创作 |
CN102262528A (zh) * | 2010-05-26 | 2011-11-30 | 腾讯科技(深圳)有限公司 | 即时通讯客户端及其内嵌网页页面实现拖拽的方法 |
Family Cites Families (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5404442A (en) * | 1992-11-30 | 1995-04-04 | Apple Computer, Inc. | Visible clipboard for graphical computer environments |
US6460058B2 (en) * | 1996-12-06 | 2002-10-01 | Microsoft Corporation | Object-oriented framework for hyperlink navigation |
US8418131B2 (en) * | 1998-11-25 | 2013-04-09 | Helmut Emmelmann | Interactive server side components |
US6591295B1 (en) * | 1999-11-05 | 2003-07-08 | Oracle International Corp. | Methods and apparatus for using multimedia data stored in a relational database in web applications |
US20030115546A1 (en) * | 2000-02-17 | 2003-06-19 | Dubey Stuart P. | Method and apparatus for integrating digital media assets into documents |
US7103838B1 (en) * | 2000-08-18 | 2006-09-05 | Firstrain, Inc. | Method and apparatus for extracting relevant data |
KR100440045B1 (ko) * | 2001-01-16 | 2004-07-14 | (주)우리랑월드 | 실시간 태그 해석 기능을 제공하는 채팅 서비스 방법 및시스템 |
US20030065638A1 (en) * | 2001-09-19 | 2003-04-03 | Jason Robert | The method to comstomize the appearance of a wab page by dragging and dropping objects within a web page |
US7509577B2 (en) * | 2002-03-08 | 2009-03-24 | Toshiba Corp Oration | Method and system for implementing a clipboard |
US8375294B2 (en) * | 2004-07-29 | 2013-02-12 | Cisco Technology, Inc. | Editing web pages |
US7698631B1 (en) * | 2004-07-29 | 2010-04-13 | Cisco Technology, Inc. | Stateless online web page editing system and method |
US20060218492A1 (en) * | 2005-03-22 | 2006-09-28 | Andrade Jose O | Copy and paste with citation attributes |
US20070283251A1 (en) * | 2006-05-31 | 2007-12-06 | Joseph Pally | Web-based experience editor in a recursive browser system and uses thereof |
US20080072157A1 (en) * | 2006-09-14 | 2008-03-20 | Joseph Pally | System for controlling objects in a recursive browser system: ZSpace sharing |
US20080141136A1 (en) * | 2006-12-12 | 2008-06-12 | Microsoft Corporation | Clipping Synchronization and Sharing |
US8429551B2 (en) | 2007-02-15 | 2013-04-23 | Microsoft Corporation | Application-based copy and paste operations |
US8438653B2 (en) * | 2007-04-10 | 2013-05-07 | Microsoft Corporation | Strategies for controlling use of a resource that is shared between trusted and untrusted environments |
US20090187842A1 (en) | 2008-01-22 | 2009-07-23 | 3Dlabs Inc., Ltd. | Drag and Drop User Interface for Portable Electronic Devices with Touch Sensitive Screens |
US20140040862A1 (en) * | 2008-04-03 | 2014-02-06 | Adobe Systems Incorporated | Copying Reusable Components from a Remote Source |
US9092115B2 (en) | 2009-09-23 | 2015-07-28 | Microsoft Technology Licensing, Llc | Computing system with visual clipboard |
US10713666B2 (en) * | 2009-12-24 | 2020-07-14 | Outbrain Inc. | Systems and methods for curating content |
US8555187B2 (en) * | 2010-02-16 | 2013-10-08 | Google Inc. | Server-based data sharing in computer applications using a clipboard |
US8666961B1 (en) * | 2010-03-19 | 2014-03-04 | Waheed Qureshi | Platform for generating, managing and sharing content clippings and associated citations |
EP2625606A4 (en) * | 2010-10-08 | 2014-11-26 | Irise | SYSTEM AND METHOD FOR EXTENDING A VISUALIZATION PLATFORM |
CN103907086B (zh) | 2011-10-06 | 2017-11-03 | 索尼移动通信株式会社 | 用于操纵第一用户接口对象或第二用户接口对象的方法和电子装置 |
US9305174B2 (en) * | 2013-04-09 | 2016-04-05 | Robert Hansen | Electronic clipboard protection |
-
2013
- 2013-04-30 US US13/873,401 patent/US11050851B2/en active Active
- 2013-12-04 CN CN201310653726.0A patent/CN104133828B/zh active Active
-
2014
- 2014-03-07 GB GB1404032.3A patent/GB2513717A/en not_active Withdrawn
- 2014-04-24 DE DE102014005958.8A patent/DE102014005958A1/de active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090287824A1 (en) * | 2008-05-13 | 2009-11-19 | Google Inc. | Multi-process browser architecture |
CN102077198A (zh) * | 2008-06-25 | 2011-05-25 | 微软公司 | 结构化共同创作 |
CN102262528A (zh) * | 2010-05-26 | 2011-11-30 | 腾讯科技(深圳)有限公司 | 即时通讯客户端及其内嵌网页页面实现拖拽的方法 |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106503009A (zh) * | 2015-09-07 | 2017-03-15 | 阿里巴巴集团控股有限公司 | 显示页面中数据的转移方法及装置 |
WO2017041632A1 (zh) * | 2015-09-07 | 2017-03-16 | 阿里巴巴集团控股有限公司 | 显示页面中数据的转移方法及装置 |
CN106503009B (zh) * | 2015-09-07 | 2019-12-06 | 阿里巴巴集团控股有限公司 | 显示页面中数据的转移方法及装置 |
CN109074375A (zh) * | 2016-03-29 | 2018-12-21 | 微软技术许可有限责任公司 | web文档中的内容选择 |
CN109074375B (zh) * | 2016-03-29 | 2023-01-03 | 微软技术许可有限责任公司 | web文档中的内容选择 |
CN109804343A (zh) * | 2016-10-05 | 2019-05-24 | 微软技术许可有限责任公司 | 选择和移动提示 |
CN110235122A (zh) * | 2016-12-21 | 2019-09-13 | 开文公司 | 用于将web内容转化为可重复使用的模板和组件的系统和方法 |
CN110235122B (zh) * | 2016-12-21 | 2023-07-07 | 开文公司 | 用于将web内容转化为可重复使用的模板和组件的系统和方法 |
CN107623780A (zh) * | 2017-08-31 | 2018-01-23 | 努比亚技术有限公司 | 一种编辑方法、终端及计算机可读存储介质 |
CN111782424A (zh) * | 2020-07-03 | 2020-10-16 | 厦门美图之家科技有限公司 | 数据处理方法和装置、电子设备及存储介质 |
CN111782424B (zh) * | 2020-07-03 | 2024-05-03 | 厦门美图之家科技有限公司 | 数据处理方法和装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
GB2513717A (en) | 2014-11-05 |
US20140324943A1 (en) | 2014-10-30 |
US11050851B2 (en) | 2021-06-29 |
DE102014005958A1 (de) | 2014-10-30 |
CN104133828B (zh) | 2018-08-17 |
GB201404032D0 (en) | 2014-04-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104133828A (zh) | 用于html文档的拖放剪贴板 | |
US10936179B2 (en) | Methods and systems for web content generation | |
JP6763899B2 (ja) | ウェブ・アプリケーションにおける連携通信 | |
EP2649536B1 (en) | Codeless sharing of spreadsheet objects | |
US8176120B2 (en) | Web-page authoring tool for automatic enrollment in advertising program | |
CN102947792B (zh) | Web应用转换和暂时性web应用 | |
US8539336B2 (en) | System for linking to documents with associated annotations | |
CN102918486B (zh) | Web应用导航域 | |
TWI450107B (zh) | 用於網路資料使用平臺之方法及電腦可讀儲存媒體 | |
TW201508639A (zh) | 透過捕捉服務捕捉網站內容 | |
US20150088969A1 (en) | Systems and methods for managing loading priority or sequencing of fragments of a web object | |
US20130031457A1 (en) | System for Creating and Editing Temporal Annotations of Documents | |
US20130019189A1 (en) | Augmented editing of an online document | |
CN102918484A (zh) | 包括任务栏锁定的万维网应用锁定 | |
CN102918540A (zh) | 利用凭证创建并启动万维网应用 | |
US8706778B2 (en) | Methods and systems for an action-based interface for files and other assets | |
US20090222727A1 (en) | Method, Apparatus and Computer Program Product for Capturing and Viewing Stored Web Resource Interactions | |
US20160364398A1 (en) | Generation and dynamic serving of device-dependent web content | |
WO2015017738A2 (en) | Synchronized web-browsing | |
US20160103799A1 (en) | Methods and systems for automated detection of pagination | |
US20190258666A1 (en) | Resource accessibility services | |
US10289741B2 (en) | Using relevant objects to add content to a collaborative repository | |
CA2631105A1 (en) | System and method for creating and editing content on a webpage | |
JP6217473B2 (ja) | Webサービス提供装置 | |
CN113343138A (zh) | 一种回退拦截方法、装置、智能终端及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |